アイデア提供者 - Vasiliy
mq5コード作成者 - barabashkakvn
このEAは、iCCI(コモディティチャンネルインデックス、CCI)とiMA(移動平均、MA)インジケーターを使用します。
MAが上昇しているとき、iCCIインジケーターは-100で買い、200で売りを示します!
逆に、MAが下降している場合、iCCIインジケーターは100で買い、-200で売りを示します!
これにより、強い動きの中で「誤った」トレードを減少させ、EAは残る動きを捉えることを試みます。
取引の時間間隔を設定することも可能です(Use Time intervalパラメータで有効/無効を切り替え)。時間間隔は、Start hourからEnd hourまで設定できます。日中の時間間隔だけでなく、日をまたぐ時間間隔も指定可能です。以下は時間間隔定義関数内の例です:
//+------------------------------------------------------------------+ //| TimeControl | //+------------------------------------------------------------------+ bool TimeControl(void) { MqlDateTime STimeCurrent; datetime time_current=TimeCurrent(); if(time_current==D'1970.01.01 00:00') return(false); TimeToStruct(time_current,STimeCurrent); if(InpStartHour<InpEndHour) // intraday time interval { /* input uchar InpStartHour = 5; // 開始時刻 input uchar InpEndHour = 10; // 終了時刻 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 _ _ _ _ _ + + + + + _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ + + + + + _ _ _ _ _ _ */ if(STimeCurrent.hour>=InpStartHour && STimeCurrent.hour<InpEndHour) return(true); } else if(InpStartHour>InpEndHour) // time interval with the transition in a day { /* input uchar InpStartHour = 10; // 開始時刻 input uchar InpEndHour = 5; // 終了時刻 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 _ _ _ _ _ _ _ _ _ _ + + + + + + + + + + + + + + + + + + + _ _ _ _ _ + + + + + + */ if(STimeCurrent.hour>=InpStartHour || STimeCurrent.hour<InpEndHour) return(true); } else return(false); //--- return(false); }

コメント 0