*

[FX] 2本の移動平均線を使ったシンプルな EA

公開日: : 最終更新日:2023/07/26 マネー

あるブログの記事「移動平均線クロスでエントリーするEA(フリーEA)」を読んで、「よし久々に作ってみよう」と思いました。

超シンプルなものはもう 6年以上前に作りましたから、最近覚えた技を練り込みます

できた。

厳密には平均線クロスではなく、2本の LWMA(線形加重移動平均線) をフィルタ的に使うことになりました。

つまりクロスさせないで使う・・・アレ、主旨が変わってしまった。

買いエントリ

  • 2本の LWMA がどちらも上を向いている(速度が正)
  • 2本の LWMA の差が拡大している(加速度が正)
  • 終値が1本前の高値を超えた

のすべてが揃ったとき。

売りエントリ

  • 2本の LWMA がどちらも下向いている(速度が負)
  • 2本の LWMA の差が拡大している(加速度が負)
  • 終値が1本前の低値を超えた

のすべてが揃ったとき。

エグジットは、

  • 改良した HLバンド
  • 終値が短期線とクロス
  • 初期ロスカット

のどれかが成立したときにしました。

2021/1/1-2021/5/29 ドル円 15分足 1万通貨

取引数120回、純益 366.67ドル、プロフィットファクター 2.57、勝率41.67%(50勝70敗)、最大ドローダウン 0.49%(4.9% / lot)となりました。

勝率はよくないですが、回数と収益、資産曲線の形状はなかなかいいです。

ほんのちょっとブレイクアウトをかましたトレンドフォローなので、勝率はこんなものでしょう。

指標を移動平均線2本しか使っていないわりにはがんばっているのでは。

気に入ったので、来週から 1万通貨で運用テストに入ります。

プログラムソース

 

//
// ys2MA01a.mq4
//  愛称「2本のチカラ」
//    エントリ、エグジットは  LWMA 2本を使う
//     15分足でよい結果

//マジックナンバーの定義
#define MAGIC  2021060401

//パラメーターの設定//
extern double Lots = 0.1;     //取引ロット数
extern int Slip = 10;         //許容スリッページ数
extern string Comments =  “ys2MA01a”; //コメント

extern int Fast_period = 10 ;
extern double margin = 0.022 ;

int ma1 = 30 ;
int ma2 = 100 ;

extern int in_time =8; // 取引開始時間(サーバー時間)
extern int out_time = 11; // 取引停止時間(最大24)

//変数の設定//
int Ticket_L = 0; //買い注文の結果をキャッチする変数
int Ticket_S = 0; //売り注文の結果をキャッチする変数
int Exit_L = 0;   //買いポジションの決済注文の結果をキャッチする変数
int Exit_S = 0;   //売りポジションの決済注文の結果をキャッチする変数

int OS1 ;
int OS2 ;
double   OOPL;
double   OOPS;

int B_cnt = 0 ;
int S_cnt = 0 ;

extern double ILC = 5.0 ;
extern int TeikyuuYoubi = 0 ; // 定休曜日(0=日, 1=月, 2=火, 3=水, 4=木, 5=金)

int start()
{

double lc = ILC;
if(( Digits ==3 ) ||(Digits ==5)) lc = lc*10.0 ;

if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;

if ( DayOfWeek() == TeikyuuYoubi ) return(0) ;

double lwma1 = iMA(NULL,0,ma1,0,MODE_LWMA,PRICE_CLOSE,1);
double lwma2 = iMA(NULL,0,ma2,0,MODE_LWMA,PRICE_CLOSE,1);
double lwma1p = iMA(NULL,0,ma1,0,MODE_LWMA,PRICE_CLOSE,2);
double lwma2p = iMA(NULL,0,ma2,0,MODE_LWMA,PRICE_CLOSE,2);
double lwma1pp = iMA(NULL,0,ma1,0,MODE_LWMA,PRICE_CLOSE,3);

int trendy = 0;
if ( lwma1 > lwma2 && lwma1 > lwma1p && lwma2 > lwma2p && (( lwma1 – lwma1p ) > ( lwma1p – lwma1pp ) ) ) trendy = 1 ;
if ( lwma1 < lwma2 && lwma1 < lwma1p && lwma2 < lwma2p && (( lwma1 – lwma1p ) < ( lwma1p – lwma1pp ) ) ) trendy = -1 ;

if ( B_cnt > 0){
if ( B_cnt > Fast_period) B_cnt = Fast_period ;
double FastLL2 = Low[iHighest(NULL, 0, MODE_LOW, B_cnt, 2)];
}
if ( S_cnt > 0){
if ( S_cnt > Fast_period) S_cnt = Fast_period ;
double FastHH2 = High[iLowest(NULL, 0, MODE_HIGH, S_cnt, 2)];
}

//買いポジションのエグジット

OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();
if(  ( OOPL – lc*Point >= Close[1]  ||  Close[1] < FastLL2 – margin ||  Close[1] < lwma1 )
&& ( Ticket_L != 0 && Ticket_L != -1 ))
{
Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Pink);
if( Exit_L ==1 ) {Ticket_L = 0;}
B_cnt= 0 ; S_cnt = 0 ;
}

//売りポジションのエグジット

OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET);
OOPS = OrderOpenPrice();
if(  ( OOPL – lc*Point >= Close[1]  ||  Close[1] > FastHH2 + margin || Close[1] > lwma1  )
&& ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Aqua);
if( Exit_S ==1 ) {Ticket_S = 0;}
B_cnt= 0 ; S_cnt = 0 ;
}

//買いエントリー
if( trendy >0  && Close[1] > High[2]
&& (Hour() >= in_time && Hour() < out_time)
&& ( Ticket_L == 0 || Ticket_L == -1 )
&& ( Ticket_S == 0 || Ticket_S == -1 ))
{
Ticket_L = OrderSend(Symbol(),OP_BUY,Lots,Ask,Slip,0,0,Comments,MAGIC,0,Pink);
B_cnt= 1 ; S_cnt = 0 ;
}

//売りエントリー
if( trendy <0 && Close[1] < Low[2]
&& (Hour() >= in_time && Hour() < out_time)
&& ( Ticket_S == 0 || Ticket_S == -1 )
&& ( Ticket_L == 0 || Ticket_L == -1 ))
{
Ticket_S = OrderSend(Symbol(),OP_SELL,Lots,Bid,Slip,0,0,Comments,MAGIC,0,Aqua);
S_cnt= 1 ; B_cnt = 0 ;
}

return(0);
}

関連記事

【FX】オートロット解禁

FX自動売買の話です。 以前は、ナンピンマーチン系の自動売買プログラム(EA)を使って毎月 8

記事を読む

【FX】Fintokei に適する EA

Fintokei のように含み損を最重視する場で使用するのは、やはりナンピン系の EA は荷が重そう

記事を読む

【FX】EA の寿命とその対策

現在も FX の自動売買を順調に続けています。 メタトレーダー4 で EA を動かすというオー

記事を読む

年金は大丈夫か?

* 自民党の圧勝に終わった昨日の参議院選。 まだ、民主党に入れる人がいてちょっと驚きました。

記事を読む

アマゾンで激安商品の見つけ方

* 以前、ここにも書き、雑誌『Windows100% 2012年4月号』にも書いてありましたが

記事を読む

平等な税金

以前に紹介した橘玲さんの新作「新・貧乏はお金持ち 「雇われない生き方」で格差社会を逆転する 」ですが

記事を読む

【FX】新しい FX自動売買プログラム(朝スキャ)作成

久しぶりに FXの自動売買プログラム作りに ハマっています。 昨日作ったものは、珍しくそこそこ

記事を読む

簡単な平均足システム (2)

以前の記事「簡単な平均足システム」で作った簡単な平均足システムを改良してみました。 改良その1

記事を読む

【FX】Exness で新たにゼロ口座を開いてみる

スタンダード口座を開いた Exness ですが、スプレッドは十分狭いとは言えず、朝スキャの勝率もバッ

記事を読む

【FX】ほぼストキャス単独での EA

ストキャスティクスという指標があります。 売買サインが早く出るのでスキャルピング愛好家には好評

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

【FX】2026年7月2日のやばかった瞬間

2026年7月2日はじつは やばかった瞬間がありましたという話。

Claude Fable 5 が無料使用期間中

アンソロピックが 6月に発表したものの、米政府の輸出規制により日本では

ChatGPT で画像製作

ChatGPT にプロンプトを渡すだけで、写真のような画像が製作できる

【FX】ダブルトップ&ダブルボトムを判別するインジケーター

ダブルトップ&ダブルボトムを判別するインジケーターを MT4 用で作り

AXI Select 順調?

本日、プロップファームの AXI Select の なかなか上がらなか

→もっと見る

  • 2026年7月
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • アクセスカウンター
PAGE TOP ↑