OANDA × fx-on.com

平均足Smoothed Bands EA・・・MT4(メタトレーダー4)のEA(自動売買)プログラミング講座

複数の平均を組み合わせる手法は数多くあります。
MACDは期間の異なる平均の差とその差の平均のクロスをみます。
またHMAは短期半分平均の倍の値と平均の差の平均です。

平均足Smoothedも様々な平均を組み合わせて作られる平均足です。
今回は平均足Smoothedのトレンドとボリンジャーバンドを使用して簡単なEAを作成します。
※実験用のEAのため実運用には使用しないでください。

以下の条件で発注します。
①ポジションを持っていない
②平均足Smoothedの終値と始値の比較
③ボリンジャバンドと平均の差が一定以上の時

またポジションクローズは②が逆転した時に行います。

トレンドが出ていない時にはだましが多くなります。
だまし回避の為にボリンジャーバンドと平均の差の大きさを利用します。



double MAC,MAO,BB;
datetime OldTime;
string Sy;
int Mode,Ticket,RV;
void OnInit(){
Sy=Symbol();
}
void OnTick(){
if(Time[0]!=OldTime){
OldTime=Time[0];
MAO=((iMA(Sy,0,6,0,MODE_SMMA,PRICE_OPEN,1)
+iMA(Sy,0,6,0,MODE_SMMA,PRICE_CLOSE,1))
+(iMA(Sy,0,6,0,MODE_SMMA,PRICE_OPEN,2)
+iMA(Sy,0,6,0,MODE_SMMA,PRICE_CLOSE,2))/2)/3;
MAC=(iMA(Sy,0,6,0,MODE_SMMA,PRICE_WEIGHTED ,0)*2+
iMA(Sy,0,6,0,MODE_SMMA,PRICE_WEIGHTED ,1))/3;
BB=iBands(Sy,0,6,1,0,PRICE_CLOSE,MODE_UPPER,0)
-iBands(Sy,0,6,1,0,PRICE_CLOSE,MODE_BASE,0);
if(OrdersTotal()){
RV=OrderSelect(0,SELECT_BY_POS);
if(OrderType()==OP_BUY && MAO>MAC){
RV=OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5);}
if(OrderType()==OP_SELL && MAO RV=OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),5);}}
if(!OrdersTotal()&&BB>0.2){
if(MAO Ticket=OrderSend(Sy,OP_BUY,0.1,Ask,5,0,0);}
if(MAO>MAC){
Ticket=OrderSend(Sy,OP_SELL,0.1,Bid,5,0,0);}}
}
}
}

多くの平均の計算をするため処理時間がかかります。
Symbol()関数は変数Syに代入しPERIOD_CURRENTは0で省略し高速化をしています。
OrdersTotal()関数を二度使用する事でドテンエントリーが出来るようにします。


筆者について
hayashi

林 貴晴(はやし たかはる)
株式会社ゴゴジャン(fx-on.com運営) メディア営業部 部長

・1981年 小学4年にBASICを習得
・1983年 機械語習得
米国系クインタイルズ・トランスナショナルジャパンにて
スイス系ノバルティスファーマでの業務に従事
英国系グラクソ・スミスクラインで7年の活動
・2015年7月よりEAの開発を開始
・2016年12月ゴゴジャンで業務開始
・2017年2月部長としての活動を始める
高速化の妨げになるコーディング規約に懐疑派。
カジノ式の巧みなロットコントロールや高速EAの開発には定評がある。
バックテストの結果のみでEAの性能をある程度分析できると評価され
fx-ONに記事を執筆。VB6によるシストレ開発に始まり千数百のEAを作成。
その経験からテクニカルが力を発揮するのは短期取引のオシレーターと信念を持つ。

この記事をシェアする


本ホームページに掲載されている事項は、投資判断の参考となる情報の提供を目的としたものであり、投資の勧誘を目的としたものではありません。投資方針、投資タイミング等は、ご自身の責任において判断してください。本サービスの情報に基づいて行った取引のいかなる損失についても、当社は一切の責を負いかねますのでご了承ください。また、当社は、当該情報の正確性および完全性を保証または約束するものでなく、今後、予告なしに内容を変更または廃止する場合があります。なお、当該情報の欠落・誤謬等につきましてもその責を負いかねますのでご了承ください。

ホーム » OANDA Education X fx-on.com » 平均足Smoothed Bands EA・・・MT4(メタトレーダー4)のEA(自動売買)プログラミング講座