*

[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);
}

関連記事

Trend Intensity Index という指標

Schaff Trend Cycle について調べていたら、似たような指標 Trend Intens

記事を読む

アメリカ株投資 2024-7-2

アメリカ株投資ですが、しばらくはあまり買っていません。 でもよく見ると、含み益が 750万円近

記事を読む

現代貨幣理論(MMT)

最近よく聞く言葉に、現代貨幣理論 Modern Monetary Theory というものがありまし

記事を読む

【FX】プロップファームの Fintokei について

以前の記事「【FX】プロップファーム(Prop Firm)について(2)」の続きです。 日本で

記事を読む

ディナポリ手法で利用するDMA (4) ATRトレイリングストップ

前回の記事「ディナポリ手法で利用するDMA (3) HLバンドトレイリングストップ」で、ディナポリ移

記事を読む

[FX]ロブ・ブッカーのNY Box 検証 (2)

以前の記事「ロブ・ブッカーのNY Box 検証」の続きです。 かわせ玲人さんのブログにも「ロブ

記事を読む

ネクスト・ジェネレーションと世界のベストに楽天SCHD の売却代金を移行

楽天SCHD を売却した代金が入金されていたので、超高配当投資信託の「ネクスト・ジェネレーション」と

記事を読む

仮想通貨はブロックチェーンを使っているから価値がある?

「仮想通貨はブロックチェーンを使っているから価値がある」とか言う人を TV でも見ます。 おかしい

記事を読む

トレンドかレンジの機械的判断

トレンドVSレンジ の判断にはなかなか悩まされます。 レンジが非トレンド全体を指すことばではあ

記事を読む

[FX] 現在稼働中の VQシステム yasciiVQ04e.ex4(2)

以前の記事「 現在稼働中の VQシステム yasciiVQ04e.ex4 」で紹介したシステムを

記事を読む

Message

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

【AI】Perplexityという検索特化の AI

Perplexity という検索特化の AI があります。 きち

ネクスト・ジェネレーションと世界のベスト 5月の配当

毎月配当の超高配当投資信託の「ネクスト・ジェネレーション」と「世界のベ

AIPI, CEPI, FEPI の利回りが過少評価されている件

ずっと前から AIPI, CEPI, FEPI などカバードコール商品

【FX】MetaTrader4 build 1470 の不具合

MetaTrader4 build 1470 の不具合については以前も

投資商品乗り換え完了

ようやく2月くらいから始めた 投資信託+日本株の入れ替えが完了しました

→もっと見る

  • アクセスカウンター
PAGE TOP ↑