2016-04-03|MT4でFXを勝ち抜く研究をするブログMT4でFXを勝ち抜く研究をするブログ新ブログはこちらへhttps://trv-and-mt4.blogspot.com/ハーモニックパターン検出インジケータV10取説2016年4月8日金曜日[MT4プログラミング]EAに組み込みやすいようにインジケータを作成する。EAにインジケータを組み込もうと思うと、iCustomで呼び出さないのであれば、EA内部に実装する必要があります。インジケータを作成する際、EAで実装しやすいようにするにはどうすればよいでしょうか?例で示します。このインジケータは高値安値終値始値の平均をとるものです。平滑化のために一本前の値と単純平均をとっています。indicator_chart_window//バッファーを指定する。1//プロット数を指定する。1;}さて、表示用のバッファであるharfは、チャートのバーが更新される事に勝手に増えていきます。closeも、EAの中では使えません。そこで、このコードを次のように直すと、EAに組み込みやすくなります。indicator_chart_window//バッファーを指定する。1//プロット数を指定する。表示用バッファに値を設定する。iLow関数を使用します。同じ値が取得可能です。バーの更新毎に増えるバッファを自力で実装する必要があります。これは、iBarsで取得したバーの本数と、配列の数が異なる場合、リサイズを行うという処理です。リサイズ時増える分には値は増える前までの値は保持されています。初期値にEMPTY_VALUEを設定しています。このように作成しておくと、EAにする際、簡単に移植が可能です。EAにインジケータ部分を移植した例です。}//+------------------------------------------------------------------+このように、基本コピペだけで作成可能です。関数化しておけば、さらに簡単です。いうことで、久しぶりにプログラムの話題でした。「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。インジケータ一覧Twitterもよろしくお願いします。https://twitter.com/mt4programブログランキングにご協力よろしくお願いします。m(._.)mにほんブログ村お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。7本FractalsからTick値見ながらレンジ描画ということで、検証するにしても、見える化しないと戦略が思いつかないため、まずは見えるかしてみました。EURUSD1H描画ロジックは単純です。1時間足の7本高値が発生した場合、それ以前の7本高値との幅を上限バンドとするというルールです。Tick値を見てTick値が小さすぎる際に発生した高値安値位置は、無視します。同じ価格位置に高値安値が発生した場合は、その前の高値安値を調べに行きます。+して、各国の取引時間を表示できるようにしてあります。EURUSD1H4/1までの上昇相場からレンジ相場に移行しています。枠線だけの四角が各国の取引時間を示しています。(青枠:日本、黄色:EU、赤:アメリカ)それぞれの人たちが、どのような行動をとっているのかがはっきりと表れています。日本とEUの人たちは、EURを売っています。アメリカの人たちはEURを買っています。(というよりたぶんドルを売っています。)そのため、日本時間からEU時間の中盤にかけて下げ相場となり、アメリカ時間で戻すといレンジを形成しています。昨日までは、7本高値安値位置の終値がそれぞれ上限・下限バンド内で収まっていて、レンジを形成していましたが、4/7はアメリカ時間に上限を抜けた位置で高値を形成しました。レンジが崩れつつあります。EURUSD1H下げ相場→上げ相場の流れを見てみたいと思います。3/24まで、下限バンドの下側で、下値頂点をつけながら遷移していきます。拡大してみると、3/22までは、アメリカ時間の人たちが売ってきていますが、2/23はアメリカは中立化、3/24でアメリカは買い転換しています。(その間、日本-EUは売り)その後、2/28の朝までレンジを演出したのち、アメリカ時間の頭で買いに転換となります。このようにみると、EURUSDにおいては上限下限の更新状態と、EU時間アメリカ時間の値動きが流れの変化を考えるのにとても重要に見えてきます。その観点で、再度直近のレンジを見ると昨日の形として、EU売り、アメリカ買いという流れに変化はありません。バンド上限超えというシグナルは発生しています。これを準備状態ととらえると、今日の時点で、EUが買いに回ると上昇トレンド開始、EUが売りに回るとレンジに戻るという流れに見えます。目視レベルの検証ですが、なにやら結構使える予感がしてきました。いうか、かなりよさそう。考え方は単純なのですが、プログラムで組むと結構苦労しました・・・・・。これは、ちょっと手間賃をもらわないと出せないコード量になってしまいました。これは、裁量トレード派の人たちもかなり役立つインジケータな感じがします。このインジケータを使用して、トレード手法を記述していただいて、その方からのページで購入した場合FX-ONのアフィリエイト報酬で50%とかもっていっていただける変わりに、手法のPDFを配布していただけるとかなら、大歓迎なのですが・・・・・・。トレードに対してはっきりと優位性を確認できてないので、ないですよね^^;;どなたかやってみたいという方はFX-ONメッセージでご連絡ください。ソースコードはお渡しできませんが、モニターとしてex4ファイルはお渡しできます。トレードに活用していただいて有用かどうかのご連絡をいただくのが条件となります。トレード手法をFX-ONにて販売するかどうかはお任せいたします。2016/4/28までの募集です。私はあくまでEA化が目的ですので、ここからEAに展開していきたいと思っています。特徴量を数値化しないといけません・・・うー結構大変です。行けそうな予感がするので頑張ります。あ、有料といえば、変化率分散バンドの前の日を含めて偏差をとるバージョンですが、有用性を確認できなかったため、公開を見合わせます。「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。インジケータ一覧Twitterもよろしくお願いします。https://twitter.com/mt4programブログランキングにご協力よろしくお願いします。m(._.)mにほんブログ村お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。雑記2016年4月6日水曜日[MT4インジケータ]期間が変更可能なフラクタルでレンジ相場を判定したい。Gewinn7や、今開発中のGewinn8の精度を高めるため、レンジ相場かどうかを判定したいなぁと四苦八苦しています。レンジ相場かどうかの判定といえば、まず高値安値の観測から始まるのですが、MT4標準でついているFractalsは5本間の高値安値位置に矢印を描画するというインジケータです。日足などでは問題ないのでしょうが、時間足など短い足だと、矢印がたくさん出てしまい、どれを観測すればよいのかわからなくなってしまいます。そこで、5本ではなく7本など、観測期間を変更可能なフラクタルを作成しました。高値安値ではなくてクローズ値をベースに描画できるようにもしてあります。カスタムフラクタル(下)これでも、例えば画像の例だと、日本時間の値動きが少ない時間帯に矢印が出たりします。そのため、もう一つTickVolumeと合わせて表示することで有効な矢印かどうかを判断しましょう。■カスタムフラクタルと、TickVolumeTickVolumeにて平均値を下回っている個所の矢印は有効ではないと判断します。ここからレンジ相場のレンジを判断していくのはまだ研究中です・・。判定期間が変更可能なフラクタル「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。インジケータ一覧Twitterもよろしくお願いします。https://twitter.com/mt4programブログランキングにご協力よろしくお願いします。m(._.)mにほんブログ村お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。フォワードテストの成績は次の通りでした。1.119基本的にトレンドを判定してひたすら追撃売り買いするロジックですので、トレンドが長続きしない場合は勝ったり負けたりします。勝つときより負けるときのほうが損が少ないことを目指したロジックになっています。3月のEAの動きを言葉で説明するとこんな感じになります。3/14~3/15の一時的な下げ時点で買い玉をため、3/15~3/16の上昇局面で大きくとりました。3/18以降に再度の上昇を見込んで再び買い玉を貯めましたが、EAが考えたよりも長い間調整期間が続いたためいったん損切をしてます。売り転換となった3/25直後に上昇局面に変化したため再び損切という形です。EAとしては直後に買い転換して、4/2までに少し取り戻しました。3月のフォワードで、デモ口座とプロ口座で結構Tick更新回数がことなり結果に差が出てしまう症状が現れました。4/4のバージョンアップにてTick値を過去300本の最大値最小値をもとに%化して、更新回数の最大値によるばらつきを減らすような改造を行いました。4月のフォワードにてデモ口座とプロ口座で差が少ないようでしたら、本格的に販売を開始したいと思います。「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。インジケータ一覧Twitterもよろしくお願いします。https://twitter.com/mt4programブログランキングにご協力よろしくお願いします。m(._.)mにほんブログ村お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。追従性となめらかさの両立を図った、トリプルEMAですが、なめらかであるということは、傾き量の変化が短期周期に惑わされずトレンド方向を表す可能性を示しています。いうことで、TEMAから観測されるトレンド方向と強度をわかりやすく表現した傾き量累計インジケータを作成しました。前回は、累計量と突っ込み判断で、バックテストによる検証を行ってみました。おさらいとして、過去記事の内容を振り返ってみたいと思います。■TEMA傾き量累計インジケータTEMA傾き量累計インジケータは、その名の通り、TEMAの前回足と今回足の差を累計していったインジケータです。傾き方向が逆転すると0リセットされます。累計値の大きさがトレンドの強さを示します。大きく変化するか長い時間変化するかで累計量がたまっていく形です。前回、EURUSD1Hにおいて、傾き量がリセットされたタイミング(TEMAの方向が変化した)で、過去2日間を探査して、下記条件でトレードした場合のバックテストを検証してみました。・1時間足チャートで判断しています。・15分毎に足の形成途中でも条件を満たせばをポジションを持ちます。・過去2日間で、下げ方向、上げ方向の最大値が大きい方のみにポジションをとります。・変化率分散バンドによる突っ込み判断で、すでに高値・安値(1σを超えた値)に位置する場合はポジションを取らない。(※これは、単にすでに十分動きすぎた後にポジションを取らない事を目的としていますので、突っ込みを判定しているだけですので、移動平均かい離率やRSI等の短期的な突っ込み判定ができれば代用可能かと思います。)・100pips利益が超えたら100pips位置にストップを移動するトレイリングと、利益が40pips超えたら損益トントン位置にストップを移動するロジックが入っています。1ポジション両建てなしです。コントロールポイント(おおまかな方法。連敗TEMA傾き累積のみを使った機械的な取引でも+です。単一インジケータによる取引の基礎としては十分優秀なことがわかります。閾値を使ってある程度細かい振幅は無視してしまう制御を行ったのですが、これを逆手にとって、閾値でリセットされた場合とリセットされなかった場合で、追撃売り買いする戦略などはどうでしょう?少し時間がかかるかもしれませんが、検証して記事にアップ予定です。「MT4でFXを勝ち抜く研究をするブログ」で公開している無料インジケータは、こちらの一覧から。インジケータ一覧Twitterもよろしくお願いします。https://twitter.com/mt4programブログランキングにご協力よろしくお願いします。m(._.)mにほんブログ村お約束ですが、本ブログは、投資に対する利益を約束する物ではありません。最終的には自己責任によるご判断よろしくお願いいたします。★相互リンク募集中★トレードステーションと株・FX自動売買で暮らす茶トラがFX検証中。人気の投稿[MT4プログラミング]MT4のチャート上に矢印を表示する。(5)[MT4プログラミング]EAに組み込みやすいようにインジケータを作成する。7本FractalsからTick値見ながらレンジ描画[MT4インジケータ]期間が変更可能なフラクタルでレンジ相場を判定したい。