トレード備忘録 & MT4/MT5インディケータ及びEAの開発

日々のトレード備忘録及びMT4/MT5に関する事項

MT4 トラリピEAのバックテスト

2019-06-27 11:50:58 | 投資

 筆者がEAやindicatorの開発に協力しているMetaGenicFX社にて、多くの支持を得ているアイテムの中にTrap Trade SystemというEAがある。これはトラリピをはじめとする数々のトラップ取引手法に対応した自動売買ソフトで、MT4はもとよりMT5のためのプログラムもセットになっている。 

 同社には、製品に対する質問が日々寄せられている。担当者にはMT4の基礎知識があり、大方の質問にはその都度適宜対応されており、これまで顧客との間でトラブルになったことはないとのことだ。ただし、MT4やMT5の細部に亘る疑問に対しては、担当者段階では回答できないものもあり、その際には筆者の方にも照会がある。 

 最近の例には、トラリピEAのバックテストができないというのがあった。多くのEAはローソク足の終値をベースにして、売買シグナルが出れば、次の足の始値でエントリーし、かつ、同じく終値ベースで手仕舞いシグナルが出れば新しい足の始値でポジションを閉じるというものである。ところが、トラリピEAに関しては、エントリー(IFD注文)も手仕舞いもいずれもがザラ場ベースで実行される。このことはバックテストを行う場合には大きな差異が生じてくる。トラリピEAのバックテストをするには、Every Tick(全チック)で実施しなければならないということである。 

 顧客からの「バックテストができない」との質問に回答できないということで、筆者の方にも照会されてきた。質問は雲をつかむような内容であったため、バックテストの際のストラテジーテスターのセッティング画面とトラリピEAの設定画面のキャプチャー画像をメールで依頼してもらうことになった。 

 送付されてきた画像に接して思わず声をあげてしまった。なんとテスト期間が2018.年6月から2019年6月までの1年間、しかも最適化モードでテストされていたからである。Every Tickに必要なデータが先ず存在するかどうかの問題のほかに、これだけの長期間のテストはパソコンがよほど高性能でないと途中でフリーズしてしまうか、途方もなくテスト時間が長くなること必定である。加えて、最適化を計るということはEA設定分のテストに加えてさらに5~10の同じプロセスを実行せよということだ。これでは、誰がテストしてもうまくいくわけがない。 

 最適化モードをオフにして、期間を1ヶ月毎に区切ってテストしていただいたところ問題は解決した。最適化モードは時間が掛かるので、トラリピEAに限ってはこれも個々に行った方が無難のようだ。 

 単なる動作確認であれば、2~3日のテストで十分であろう。過去のローソク足の動きを見れば、売りトラリピ、買いトラリピのいずれが有利であったかは明白であるからである。取引後の逆行相場に備えるには、逆指値トラリピという手もある。

https://metagenicfx.thebase.in/


MT4 DT Oscillator(インディケータ)の解析と簡易化

2019-06-20 23:04:03 | 投資

 

 Dynamic Trader Oscillator(DT Oscillator、以下DTOSC)は米投資指導者でもあるロバート・マイナー氏開発によるオシレータ系のインディケータであり、パンローリング社から出版されている同氏の邦訳著書にも多用されている分析指標である。 

 比較的滑らかな曲線でありながら、価格反応にも優れているので、先ごろ開発した「デイトレ用逆張り手法のセットアップ」にも中心的なオシレータとして採用している。 

 さて、プログラムの論理式を眺めていると、このテクニカルはRSIとストキャスチックが合成されたものであることが分かる。通常のストキャスチックはローソク足の一定期間(例5日間)の高値・安値を測定し、その期間の中の特定日の価格がどの位置にあるのかを計算する(Kライン)。日足を例にすると、昨日から遡って3日間のKラインの平均値を計算する(%K)。この%Kをさらに移動平均(期間3)したものが%Dということになる。ストキャスチックのパラメータのデフォルト(5, 3, 3)はこのことを示している。 

 DTOSCはローソク足とストキャスチックの間にRSIを介在させている。つまるところDTOSCはRSIをストキャス化したものと結論付けることができる。 

 「デイトレ用セットアップ」で採用したDTOSCは、オブジェクト関数とOnChatEvent関数を絡み合わせた複雑なプログラムとなっている。複雑になっている理由は、サブチャートに表示されるDTOSCのパラメータの組み合わせをクリック動作で切り替えるためである。それだけの便益のために、インディケータの汎用性や拡張性を阻害している側面もある。パラメータの組み合わせは4種類に限定されてしまっているからである。さらにパラメータを調整ないしは変化させたいという要望には応えられない。また、設定したパラメータの組み合わせをテンプレートに保存しても、新しいチャートに展開するとデフォルトに戻ってしまうという不都合さも出てきた。 

 そこで、組み合わせ4種類のパラメータのセットをクリックで設定変更するという部分を削り取り、4個のパラメータを自由に変更できる仕様に簡略化した。ただし、4種の代表的な組み合わせは設定画面のなかでメモとして表示しているので、いつでもこれらの組み合わせに戻ることを可能にしている。また、一旦テンプレートに残したパラメータは、次回からは設定し直す必要はない。 

 300行以上あったプログラムが100行にまで簡略化することができた。チャートの立ち上がりも幾分速くなったようだ。「デイトレ用セットアップ」ご利用の方には、追ってお届けする手はずになっている。

 


成行き + 逆指値反対取引の両建て新規注文のスクリプト

2019-06-18 21:30:43 | 投資
 提携先からの報告によると、筆者が同社に納めたEAやインディケータのうち、最も顧客から支持を得ているのは、西山孝四郎(石原順)講師の教える転換点手法(順張り手法)に関するEAとインディケータのセット、次にトラリピを含むあらゆるトラップ手法に対応したTrapTradeSystem(EA)の順だそうである。そして3番手に位置するのは、最近開発したばかりの「デイトレ及びスキャルピング用チャートセットアップ」というから驚く。
 
 このチャートセットアップは、先ごろネットやFX教本でも紹介された二つの人気手法と一見よく似たものだからであろう。一つは「xx AI Strategy」と大仰な名称の裁量デイトレ取引手法で、インディケータの詳細や論理式等プログラムの内容は公開されていない。しかし、一見してそれはSuper SignalsとRCIのコンビネーションであることは明白である。要となるSuper Signalsは最高値・最安値が更新されるとシグナルが連続的に点灯して、チャートにベタベタとペイントされて見苦しい。
 
 もう一つは、「最強のFX 一分足スキャルピング」であった。1分足にEnvelopesをσ6まで表示したものが主たるツールなのだが、教本に示されている各σの数値が1桁間違って記載されている。しかも、図示されているMT4チャートも現実離れしたもので、とても役には立たない。Amazonの書評欄を見ると、「エントリーできません」という苦情であふれていた。
 
 「xx AI Strategy」の欠点であるSuper Signalsは内容を大幅に改善させた。最高値・最安値が連続して更新されても、重ねてペイントさせないようにした。また、オシレータは海外でも評判のDynamic Trader Oscillatorを採用した。デイトレのいずれの時間軸にも対応している。また、後述するATR Envelopesも同時表示させているので、1分足にすればスキャルピング用チャートセットアップとなる。
 
 スキャルピング用のセットアップは「最強のFX 1分足スキャルピング」とは全く異なる内容になっている。MT4搭載のEnvelopesは表面的な価格に一定の%を掛けて作成したものだから、1分足のパラメータは他の時間軸では全く使えない。通貨ペアと時間軸ごとに最適の%を探索しなければならない。これを、通貨ペア、時間軸特有のATRを計算の基礎とすることにより、どの通貨ペアや時間軸にもパラメータを変えずに対応できるようにしている。なお、教本で紹介されている元祖エンベロープも、正しいパラメータに訂正し、かつ13本の曲線が一挙に表示できるインディケータとして付録としている。(ただし、1分足でのみで使用可)
 
 話がそれたが、8/16のブログでスキャルピングにおけるストップ代わりの両建て作戦について述べた。両建てについては、賛否渦巻いており、筆者も本当のところはよく分からない。数学的には無意味だと言われればそれまでである。
 
 しかし、「チャートセットアップ」をお求めになった方からスキャルピング用両建て発注スクリプトが欲しいという要請があるので、uploarderに追加しておいた。これは商品開発のためではないので、希望者のみに配布する。以下、スクリプトの設定画面の説明;
 
IsBuyMarket: 成り行き買いの場合はTrueに、売りの場合はfalseとする
Lots: デフォルトは0.1(1万通貨単位)
StopPips: 逆指値のピップス数、成行き買いと逆指値売りとの値幅で実質損切り値に相当、デフォルトでは3ピップス
Slippage: デフォルトでは1ピップ、Market Executionでは無視される
 
uploader :
https://ux.getuploader.com/FXTrader/index/date/desc/1
 
 
 

損切り代わりの両建て注文 --- スキャルピングなら許される?

2019-06-16 13:59:02 | 投資

 1日2時間程度のことであるが、逆張り用セットアップ(Range_1)の1分足を使ってのスキャルピングが思いのほか面白い。FXを始めた頃のような新鮮な気分でトレードを楽しんでいる。 

 利益確定も損切りも2~3ピップス程度というと、とてつもなく忙しそうに聞こえるが、Super SignalとDT Oscillatorが発するエントリーシグナルは2時間で10~15回程度(アジア時間)なので、体力的にそうつらくはない。 

 問題はストップ注文(損切り注文)の入れ方である。MT4の成行き注文では、売買注文と損切り注文が同時に出せないマーケット注文方式が主流となってきている。損切り注文は、二度手間となるばかりか超短期取引ではタイミングを失するリスクを伴う。 

 FXでは両建ては禁句に近い存在であるが、株式の世界で有名な「うねり取り」は両建てが主戦術となっており、名だたる相場師はこの「うねり取り」の名手でもあった。株式の精算取引とFXでは本質的には、そう変わりがない。筆者が現在試しているスキャルピングにおける両建ては、積極的に両建てを目指すものではない。成行き注文と同時にストップ代わりにストップ幅の逆指値注文を入れておくというものである。 

 例えば、ドル円108.60で成行き売りの注文を出すと同時に106.63の逆指値の買い注文を出しておく。逆指値注文は通ってほしくないが、相場が逆行すればやむなく両建てとなるという非積極的なものである。損切り注文を忘れたり、手遅れになったりするリスクに比べれば一応の安心感もある。手動の売り買い注文という二度手間を避けるためにスクリプトを特別に用意して、成行き売り注文と逆指値買い注文を同時に出すことができるようにした。 

 成行きの売り注文が成立した後、そのまま期待通り相場が下げてくれれば何の問題もない。利益確定した後は、残った逆指値買い注文を取り消せばよいだけの話である。 

 ところが意に反して、相場が逆行して109.63の買い注文も成立、結果として売り買い同額の両建てとなってしまった。これから先は含み損3ピップスを抱えて相場の進展を少し見守ることとなる。お勧めの両建て作戦は以下のようなものである。FXでの両建て作戦は今まで考えたこともなかったが、「うねり取り」のような本格的な戦略ではなく,極めて防御的なものであるので、これなら大方の賛同も得られるのではないかと思っている。 

① 逆行が続く場合

 1分足とはいえ、いわゆる上げのトレンド相場に入ったかもしれない。そのような場合は、ATR Envelopesが急激な右肩上がりとなり、DT Oscillatorも安定的な上下運動ではなく高値圏に張り付いている(ガーベッジトップ)。Super Signalも頻繁に更新されるから、ここは安易に買いポジションの利益確定に走ってはならない。強力な武器となるのは、フィボナッチ・リトレイスメント(FR)とフィボナッチ・エクスパンションFE)である。 

 FRの61.8%やFEの161.8%、261.8%では必ずといってよいほど反発するので、そこで買いのポジヨンを外す(利益確定)。その後は、欲を出さないのが鉄則。含み損が実現益と同額以下になれば総損益ゼロで逃げれば上々と考えたい。この作戦が成功すれば、損益トントンでもある種の勝利感が残る。FRやFEに自信がなければ、以下に述べるように、次の買いシグナルが出るまで、じっくり待つ手もある。  

② 少し上げたが、その後順行(下げ相場)に戻った場合

相場の上げがそんなに続かず単なるダマシとなり、当初の予測通り下げてきた場合はどうするか。思い切って買いのポジションを外す(損切り)ことも考えられるが、筆者の場合はこれには従わないことにしている。間違いを繰り返すこともあるので、相場が本当に下げてきて次の買いシグナルが出るまで待つ。本物の買いシグナルが出たところで、売りのポジションを外す(利確)。そして、含み損が利確額と同額以下になったところで、ここでもほぼトントンで逃げ切る。 買いシグナルに従って成行き買いから入る場合は、上記の真逆であるので省略。

 この両建て作戦であえてベネフィットと呼べるものがあるとすれば、含み損を極小化できるという実質的なメリットの他に「うねり取り」でも強調される精神的安定ということであろうか。人間には「損切りはしたくない」という本源的な恐怖心があるとされる。損切りという恐怖心から解放され、ポジティブな姿勢を保ち続けることができるとすれば、あながち両建ても捨てたものではないのではないか。 

 筆者のRange_1のスキャルピングは、レンジ相場になりやすいアジア市場時間帯での取引が中心となっている。チャートの動きから判断すれば、ATR Envelopesの並びが水平に近く、かつDT Oscillatorが規則正しい上下運動(サインカーブ)を定期的に繰り返している状況が理想的であるといえる。


デイトレ用MT4セットアップ(Range_1)を使いこなす

2019-06-12 15:11:08 | 投資

 

 デイトレ(スキャルピングを含む)用逆張りMT4チャートセットアップ(陣形)4種を発表したところ、多くの方からご賛同が寄せられている旨、提携先から報告を受けました。大変力強く受け止めています。 

 上に表示のチャートはドル円の1分足にRange_1を表示させています。1分足なので、スキャルピング用として発表しているScal_2と同形です。Range_1をよりよく使いこなすために追加の説明を下記します。 

1)Indicators

① ATR Envelopes

 これはMT4に標準搭載されているEnvelopesとは全く異なるものです。「最強のFX 1分足スキャルピング」では、標準的なエンベロープを利用しているため、著書で提示されているパラメータは1分足以外の時間軸では使うことができません。通貨ペアや時間軸を変えるたびに、最適な%を探索・試行しなければなりません。また、移動平均線とエンベロープを計13回引かなければならないという手間もかかります。ついでに申し上げると、書籍で提示のあったパラメータの数値が1桁誤っているため、同じページにはとてもトレードができないようなチャートが図示されています。 

 そこで、通貨ペア・時間軸固有の平均ボラティリチィ(ATR)を計算根拠とする特別仕立てのエンベロープ、ATR_Envelopeを開発しました。中心線と±σ6までのエンベロープを一挙に描画することができます。「1分足スキャルピング」ではσ±1超でのエントリー条件として各σでの複雑な手法が述べられていますが、こちらでは、次に述べるSuper Signal及びDT Oscillatorと併用して単純明快にエントリー条件を確認することができるようになりました。

② MetaGenic Super Signal

 赤と青の矢印は本格的な売りまたは買いのシグナル、途中で現れる赤と青のx印は売買シグナルには違いないのですが、主としてポジションの決済ポイントの一つとします。矢印とx印の重なったところが本格的なエントリー候補となりますが、ここではすぐにエントリーすることはしません。次に述べるDT Oscillatorの動きを見て最終判断をすることになります。 

③ DT Oscllator

 日本ではあまり馴染みのないオシレータですが、欧米では愛好者が多いインディケータです。4つのオプションが用意されていますが、筆者は2番目のオプション(13, 8, 5, 5)を選択しています。左隅のオプションをクリックするとその種類を切り替えることができます。 

2)エントリーの実際

 チャート上に赤と青の縦線を引いています。本格的な売買シグナルが点灯したところです。その状態で、DT Oscillatorを観察すると2本の曲線は高値圏または安値圏にあるのが通常です。高値圏で赤い線が青い線を上から下にクロスしたら(デッドクロス)売り参入、反対に安値圏で赤い線が青い線を下から上にクロスしたら(ゴールデンクロス)買い参入となります。くれぐれも、SuperSignalのみで売買を開始しないことです。そしてストップロスを置くことも忘れずに。直近の売りシグナルはDT Oscillatorがかなり低い位置で点灯していますので、筆者は見送りとするところです。

 本件は、Day Trade & Scalping Setupとして、MT Studio21にて開発展示されています。展示サイト