2015-05-31|MT4でFXを勝ち抜く研究をするブログMT4でFXを勝ち抜く研究をするブログ新ブログはこちらへhttps://trv-and-mt4.blogspot.com/ハーモニックパターン検出インジケータV10取説2015年6月5日金曜日MT4のEA稼働するには仮想サーバー(VPS)が必須です。初期設定Gewinn2ですが、昨日の下げ局面でポジションを取りましたが、ロンドンフィキシング後の値動きでストップで決済されていました・・・。ストップ値の値幅の取り方に少し工夫が必要かもしれませんね。ATRベースの変動リミットで効果があるかどうかを別途検証したいと思います。随時改善を進めていきます。昨日の引き続きVPSのお話です。MT4のEA稼働するには仮想サーバー(VPS)が必須です。VPS会社検討ではVPS会社を比較しましたが、実際にVPSを契約した際、やっておくべき初期設定を書いていきたいと思います。リモートデスクトップでVPSにアクセスできた所からスタートします。リモートデスクトップでのVPSアクセス方法は、VPSサーバ業者に詳しく書いてありますし、不明な所があればメール等でも対応してもらえますので、そちらをご確認ください。VPS上ではなるべくソフトを動かさないのが基本的な考え方となります。ネットワークを経由してファイルが必要な場合、ローカルのPCで取得した後に、VPSにコピーするようにしましょう。■MT4のインストールMT4のインストーラーをリモートデスクトップで接続しているVPSにコピーして、起動します。ローカル側のPCで、インストールファイルをエクスプローラーで選択して右クリックメニューコピーもしくはCtrl+Cでコピーします。VPS上のエクスプローラーを選択して適当なフォルダに貼り付けすると、ファイルがネットワークを経由してコピーされます。あとはVPS上にコピーしたインストーラーをダブルクリックで起動して、MT4をインストールします。以後このようにローカルPCからVPSへファイルをコピーしていく前提でお話しします。■表示をWindowsクラシックモードへVPSのデスクトップ上の右クリックして個人設定を選択します。コンピュータの視覚効果を「Windowsクラシック」に変更します。契約したVPSがサーバーOSの場合は最初から選択されている場合もあります。WindowsVistaから採用されているDirectXを使用した視覚効果は見た目がきれいになりますが、MT4向けのVPSとしては不要です。クラシックテーマにすることでメモリを節約できます。■不要なサービスの停止コントロールパネルからローカルサービスの表示を選択します。不要と思われるサービスを右クリックしてプロパティを選択します。スタートアップの種類を手動に変更した後、停止ボタンを押し、最後にOKを押します。MT4を稼働させるだけなら、最低、次のサービスは止めてしまって問題ありません。Builder念のため、リモートデスクトップ接続時のリモートオーディオも無効にしておきます。■自動ログオンメンテナンス等で、VPSが再起動してしまった場合、MT4も止まってしまいます。そこで、自動ログオン設定とスタートアップにMT4を入れておくことで再起動時も自動的にMT4が再開できるようにしておきます。WindowsからAutoLogon.zipを入手します。解凍後、Autologon.exeファイルをVPSにファイルコピーし実行します。UsernameとPasswordは、リモートデスクトップでログインするときの物です。Domainは、起動段階で既に入力されていると思われますが、VPSの場合コンピュータ名となります。コントロールパネルのシステムから確認できます。必要な情報を入力後Enableボタンを押して設定完了です。×ボタンでプログラムを終了します。スタートメニューの全てのプログラムからスタートアップを選択して右クリックをエクスプローラーを選択します。MT4をインストールするとデスクトップにショートカットができていると思いますので、そのショートカットをスタートアップの中にコピーします。設定終了後、VPSを再起動してみましょう。数分待ってからリモートデスクトップでアクセスしてMT4が初期起動されていれば設定成功です。Update→設定の変更を開きます。「更新プログラムを自動的にインストールする」になっていると勝手に再起動がかかります。12:00」など相場が開いていない時間帯に設定します。自分で確認してアップデートする場合は「・・・・・インストールを行うかどうかは選択する」を選択します。ダウンロードするかどうかは好みです。ここまでがVPSで必要な設定となります。運用していくうえで、また発生するかもしれませんが、その都度追記します。次回はGewinn2を動作させるためのMT4設定を書きたいと思います。雑記MT4のEA稼働するには仮想サーバー(VPS)が必須です。VPS会社検討FXCMジャパンにて本番運用を開始しました。OANDAのスタンダード口座が両建て可能になったら移動するかも?みんなのMT4で履歴を公開しています。ブログパーツをはりつけました。今週はシグナルに達しないなぁ^^;;Gewinn2ですが、基本24時間稼働放置が基本となっています。夏時間もPC時間から自動判定しますので、PCの時計がそこそこ正確であれば、チャート上の時間にかかわらず動作するよう設計しています。雇用統計は自動的に避けます。なると、家に置いてあるPCを24時間稼働させておく必要がありますが、もっと簡単に安全に仮想サーバーをレンタルするという手段があります。月額1000円~レンタルできるため、電気代やトラブル発生時の対応を考えると、自前で用意するよりレンタルしたほうがお得です。いうことでGewinn2の連続稼働用のVPSを契約する為にあれこれ調査しました。調査内容をメモ代わりに残します。■VPSの種類は大きく分けてLinux系とWindows系まずVPSの種類ですが、大きく分けてLinux系とWindows系に分かれます。お値段は基本的にLinux系の方がお安いですが、MT4はWindowsプログラムです。Windows系のVPSを契約したほうが無難です。Linuxサーバー管理にそこそこ慣れている場合、WineというLinux上でWindowsアプリを動作させる仕組みを使ってMT4を稼働させることも可能です。■サーバーの場所についてVPSを提供している会社が日本であれば、基本、日本にサーバを設置しています。使用している証券会社のMT4サーバーが日本にあれば日本で問題ありません。FX-ONさんに面白い記事を書いている方を見つけました。「一番早いブローカーはどこだ!?国内MT4ブローカー約定速度ランキング」ここでのFXCMとOANDAの約定速度差はネットワーク遅延の影響を受けている影響が見えます。私の環境から測定したFXCMとOANDAのネットワーク遅延差です。10msネットワーク遅延差を差し引くとFXCMもOANDAも約定速度は変わらないように思われます。上記からMT4サーバがアメリカにある場合は、アメリカサーバVPSを選択できる業者を選ぶと日本と比較して140msほど注文速度に差がつくことが分かります。約定拒否も少なくなることが予想されますから、スキャル系のEAを動かす場合には重要な差になりそうです。Gewinn2が動作対象としている証券会社のサーバ設置個所はこのようになります。大体MT4のFAQコーナーに記述されていますので、皆様も契約している業者のFAQページを確認してみてください。アメリカサーバーFXCMジャパン外為ファイネストFOREXOANDA物理的距離とネットワーク的距離の関係性については、さらに議論の余地がありますが、近いほど有利なのは変わりありませんので割愛します。そのうちの記事ネタとしてとっときます^^;;tracertというルーターを追いかけるコマンドで測定すると、太平洋を横断するのに90ms、アメリカ西海岸から東海岸へが40msほどかかります。■VPS業者比較VPS業界も価格競争が激しく安く高性能にとなっていますが大体の最低のプランで2000円前後の価格帯となります。大手と言えるVPSサーバー業者をピックアップしてみました。VPSの場合、MT4を動かそうと思うとリモートデスクトップライセンス(RDS)が必要になります。それを含めての価格となります。それぞれ、特徴があります。・サクラインターネット安定性で定評があります。インターネットとの接続の太さ(バックボーン)が353Gbpsとレンタルサーバ業界では最強に近いです。日本国内で安定動作してほしいということならサクラインターネットをお勧めします。・お名前.com早くからMT4むけVPSをうたって営業をしてきました。そのためFX業界でのVPSというと、まずお名前.comを思いつく方が多いのではないでしょうか?サクラインターネットとお名前.comでVPS業界を争っています。各MT4業者と連携しており、1か月無料体験などを入り口に使いやすくなっています。アメリカサーバを選択できるのも強みです。・つかえるネットお名前.comと同様にMT4のVPS活用を売りにしてきました。アメリカデータセンターがニューヨークに近いところに設置していることを明言しているあたりも好感が持てます。MT4むけVPSとしては、お名前.comとつかえるネットが競争している形となり、サービスも似通っています。価格も限りなく近いです。2015/6はキャンペーンを行っており、スタンダードでもメモリ2Gとかなりお得になっています。世界のVPS業界の大手です。カリフォルニアにデータセンターがありますが、日本語のページがあり海外業者としては契約がしやすいのが特徴です。大手ですので強力なバックボーンがあります。MT4業者の取引サーバーは通常ニューヨークにあることが多いため、カリフォルニアとは遠いですが、日本よりはるかにましです。あと最低価格が安いです。日本のサーバーと同じ値段を払うと2CPUになるところもよいです。OANDA専用といってもいいVPS会社です。なんといってもOANDAデータセンターと同じビルに入っているのが強みで、OANDAで取引する場合もっとも注文が早い会社となります。1か月無料体験でまず契約してみました。つかえるネットさんの2Gメモリキャンペーンも結構ひかれます・・・。必要なマシンスペックですが、一つのMT4を起動して、3~4個EAを運用する場合、メモリ512M、1CPUで十分動作します。メモリが1Gを超えていると、二つのMT4を起動しても十分動作します。HDDの空き容量もVPSではバックテストを行わないようにすれば10Gもあれば十分です。計算が重たいEAを複数動かす場合は、2CPUあるプランを検討したほうがよさそうです。次回はVPSを契約した後、やっておくべき設定を書きたいと思います。このプログラムですが逆変換にバグがあります。Gewinn2のOANDAデモ口座での運用を、みんなのMT4で公開始めました。ブログパーツにはっ付けてあります。FXCMジャパンでのリアル運用も近いうちに公開予定です。昨日に引き続き、ウェーブレット変換です。ウェーブレット変換を実装する。その1引き続き日銀のレポートを参考に実装していきます。http://www.imes.boj.or.jp/research/papers/japanese/kk23-1-1.pdf離散ウェーブレット変換ですが、可逆性を保持しています。変換結果から元データが再現可能です。この特性を生かしたのがウェーブレット逆変換です。ウェーブレット変換は、ローパスフィルタとハイパスフィルタで信号成分を分離する仕組みです。ハイパスで分離された成分を除去した上で、逆変換を行うと高周波成分が失われた値となります。これを利用してある特定の閾値を持って高周波成分を除去するとノイズフィルタが実装可能です。ハイパス成分の標本標準偏差未満の値は除去する形で実装したのが、このインジケータとなります。EURUSD1時間足のチャートに7EMAとウェーブレットノイズフィルタの結果を表示した結果です。クローズ値に対する値で、黄色が7EMA、赤がウェーブレットになっています。水色の枠の中を見ていると、7EMAが暴れているのに対してウェーブレットは暴れていません。その上で全体的に7EMAよりも強く追従していることが判ります。ウェーブレット変換によるノイズ除去効果が表れています。ちなみに極端に動作したときに逆にウェーブレットの方が暴れている箇所があります。これはウェーブレットフィルタ特性となります。ウェーブレットフィルタを変更することで軽減できます。ウェーブレット変換の基本的な活用方法を示しましたが、変換結果を持って、類似波形を検索したり、エネルギーを算出して大きな影響を与えている波長を検出したりと活用方法がたくさんあるようです。研究してEAに活用したいと思います。あ、ちなみにこのプログラム結構重たいので、チャートの要素数をそこそこ減らして実行してください。indicator_chart_window//バッファーを指定する。5//プロット数を指定する。0.70710678;//元となる値を計算する。最終的には一個の値に復元される。1);}//------------------------------------------------------------------//ウェーブレット値を計算する。total);//スケーリング値はそのまま使用する。標準偏差以下の変動は切り捨てる。逆ウェーブレット変換を行う。){//標準偏差以上のwavelet値だけ反映する。wavelet[index];}}}}//------------------------------------------------------------------//標準偏差を求める。1));}標準偏差は自力で求めています。iStdDevOnArrayは移動平均をとった上で標準偏差を求めるため、単純な移動平均をとるために自力で実装しました。あと、速度向上の為、グローバルバッファに値を突っ込むなど、少々コードが汚いです・・・。プログラムを少し修正しました。ウェーブレット逆変換がうまくいっていない予感がしたので・・・。ウェーブレット変換を実装する。このプログラム、逆変換に失敗しています。そのままでは使えませんのでご注意ください。Gewinn2君が動作してくれるような値動きになってくれません。5/30夜のロンドンフィキシング後の動きでポジションをとるシグナルが発生していたのですが、週末フィルタでポジションを取りませんでした。Gewinn2は1年ほど放置するつもりで設計しているため、気長に運用します。今週から実運用を準備していますので、そちらも順次報告していきたいと思います。相場はノイズとトレンドを伴った値動きをすると仮定します。ノイズ成分とトレンド成分はどうやって分離するのが良いのでしょうか?S/Nフィルタを実装するというインジケータも存在しますが、あれは正しい信号に対してのノイズ成分を抽出する為、正しい信号が決まらない為替相場には考え方が難しくなります。フーリエ変換で周波数成分を分析して振幅が大きい成分だけで再構築する手法もよくとられているようですが時間成分が抜け落ちるという問題があります。ウィンドウフーリエ変換を行って詳細に解析していくことも可能ですがマシンパワーが必要になります。超大手のシステムトレード屋さんではミニスパコンクラスを使って行っている事でしょう。簡単にPCのパワーでも解析可能な手法はないかということで、ウェーブレット変換を実装していきたいと思います。金融研究所から公開されています。http://www.imes.boj.or.jp/research/papers/japanese/kk23-1-1.pdfこのレポートを参考にプログラムを実装していきます。このレポート、離散ウェーブレット入門から記載されているうえ、ウェーブレット変換した結果から原油やドル円に影響を与えている周波数期間を検討したりと実例に富んでいます。信号解析技術を使ったインジケータやEAを開発しようと目標にする方は一読することをお勧めします。ウェーブレット変換の基礎となる変換部分の関数実装とその内容をインジケータに表示しました。ウェーブレットフィルタはハールフィルタを使用しています。結果画像は次の通りです。indicator_separate_window//バッファーを指定する。1//プロット数を指定する。0.70710678;//元となる値を計算する。scaling;};//------------------------------------------------------------------//ウェーブレット値を計算する。0);}}実装は離散ウェーブレット変換となっています。プログラムをよーく眺めると、ハールフィルタの場合、移動平均と差分をとっているだけです。ウェーブレット変換はハイパスフィルタとローパスフィルタを元信号に対して適用して、これをダウンサンプリングしながら再帰的に行う事で周波数成分を抽出していく手法のようです。現在進行形のデータに対してウェーブレット変換を行う為、対象となっているデータがウェーブレット変換値に影響を与える範囲だけ毎回計算しています。そのため、本来ダウンサンプリングされて2^levelごとにしか値が生成されていないはずですが、毎足に値が生成されるようになっています。次回の記事では、これがなんの役に立つの?ということを検証していきたいとおもいます。※記事を書いている段階では、これ何の役にたつのか書いている本人も判っていません。Gewinn2http://fx-on.com/systemtrade/detail/?id=7600現在FX-ONでフォワードテスト中のGewinn2の解説をアップしていきたいと思います。■最初に定価ですが、FX-ONのフォワードテストを通過後の販売開始時点で、初期購入者の方々に向けて大幅な割引を予定しています。購入可能になっても割引が開始されるまでお待ちください。■Gewinn2動作紹介EA動作の特徴としては、週に2~4回取引するEAです。デイトレードを基本として、最大24時間ポジションを保持します。15分足を見て過去の価格帯から動いた方向に5分足で判断して順張りでポジションを取りに行きます。時間足をみて強力なトレンドが出ているときは、その逆にはポジションを持たないようなフィルタをかけています。各種、時間フィルタを内蔵しています。思った場合と逆方向に戻ってきてしまった場合は、すぐに損切します。S/Rオシレータを使って天井圏を判断し手じまいをします。時間足で強いトレンドを確認した場合は、利益を伸ばすことにチャレンジします。気配値を基準としたトレイリングは行っていません。目標とする価格帯へ移行するまではある程度の戻りを許容する設計となっています。戻りが想定より大きくなった場合、シグナルで手じまいを行うようになっておりトレイリングの代わりとしています。EAの思想として、とにかくマイナス利益のポジションを長時間保持しない事に注力しています。勝てる時に勝つという考え方で勝率は30%を割っていますが、利益を大きくすることで対応しています。負けますが大きくとるという形になります。バックテスト比較5年間/10年間との全ティックでのバックテスト結果です。FXDD社のデータを使用しています。取引は5分毎の確定値で行われていますので、全ティックでも確定値でもそんなに変わりません。浅めのロスカット値を設定しているため全ティックの方がより正確な値となっています。5年と10年を比較すると、直近5年に対して10年に拡大しても取引回数が1.3倍ほどしか増えていません。これはEURUSDが、10年前と比較して、短期での値動きが大きくなっていると想定しています。想像ですが、プログラム取引が活発になって動き出すと順張り方向へポジションを持つ人が増えているのではないか?と仮定しています。10年前~5年前の期間でも+を保っていますが、より直近5年の利益が大きいので最近の動きに適合したEAだと考えています。3■10年間バックテスト※初期証拠金が5年の1/4になっていますので、ドローダウンの%は1/4にして判断してください。3■今後について会社の支援を受けて開発していますので、今後も継続的にアップデートをしていきます。現在、取引回数を増やすための調査を行っています。ロスカットの値を固定ではなくてATRを参考に変動させた場合の期待利益の変化も調査しています。継続的にアップデートしていき利益が伸ばせるよう頑張りますので皆様ぜひご愛用ください。次回はプログラム的な特徴を説明したいと思います。★相互リンク募集中★トレードステーションと株・FX自動売買で暮らす茶トラがFX検証中。人気の投稿[MT4プログラミング]MT4のチャート上に矢印を表示する。(5)MT4のEA稼働するには仮想サーバー(VPS)が必須です。初期設定MT4のEA稼働するには仮想サーバー(VPS)が必須です。ウェーブレット変換を実装する。