*

MACDバーシステムの改良(2)

公開日: : 最終更新日:2015/01/11 マネー

前回紹介した MACDバー の自動売買プログラムですが、ロスカットありバージョンをもとに長期用の MACD のパラメータを変更してみました。

対象ペア

ドル円 1時間足

結果

上が最適化前、下が最適化後。 さらになめらかになったようです。

 

いずれも 2013年3月から昨日までの結果(ドル円1時間足)です。

1万ドルの口座が 22ヶ月で 2.83倍(最適化前)、3.25倍(最適化後)に増えています

同じ時期のドル円相場は下のようになります。

 

最初の円のところやその直前のディップは利益曲線のほうでは少しの損失でおさまっています。

2つめの円のジリ上がりのところはロスカットをつけたことで主に改善できてしまい、パラメータの最適化ではほとんど改善されませんでした。

買い発動はできていたが、ダマシ損失が結構効いていたということでしょうか。

改良後の結果

プロフィットファクターは 1.55 から 1.73に改善。

勝率は 39.42% から 32.95% にやや減少。

損益は +18301 ドルから +22491ドルに上昇。

最大ドローダウンも 9.6% とヒトケタに低下。

22ヶ月で 3.25 倍なら実稼働させてみようかと思いますよね。

ところが、この後えらいことに> MACDバーシステムの改良(3) あれれまさかの結末?

関連記事

改良版(ロスカット付き)ソースコード

 

//
// yasciiMACD_3cross03.mq4
//                LossCut
//

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

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

extern int Fast_EMA_Period1 = 6;
extern int Slow_EMA_Period1 = 19;
extern int Signal_Period1 = 6;
extern int Fast_EMA_Period2 = 12;
extern int Slow_EMA_Period2 = 26;
extern int Signal_Period2 = 9;
extern int Fast_EMA_Period3 = 18 ; // 19;
extern int Slow_EMA_Period3 = 33 ; // 39;
extern int Signal_Period3 = 11; // 9;

extern double LossCut = 100.0 ;

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

double   MACD_MAIN1_1 ;
double   MACD_SIGN1_1 ;
double   MACD_Value1_1 ;

double   MACD_MAIN1_2 ;
double   MACD_SIGN1_2 ;
double   MACD_Value1_2 ;

double   MACD_MAIN1_3 ;
double   MACD_SIGN1_3 ;
double   MACD_Value1_3 ;

int OS ;

int start()
  {
    if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;
   MACD_MAIN1_1 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_MAIN, 1 );
   MACD_SIGN1_1 = iMACD(NULL, 0, Fast_EMA_Period1 , Slow_EMA_Period1, Signal_Period1, PRICE_CLOSE, MODE_SIGNAL, 1 );
   MACD_Value1_1 = MACD_MAIN1_1 - MACD_SIGN1_1 ;


   MACD_MAIN1_2 = iMACD(NULL, 0, Fast_EMA_Period2 , Slow_EMA_Period2, Signal_Period2, PRICE_CLOSE, MODE_MAIN, 1 );
   MACD_SIGN1_2 = iMACD(NULL, 0, Fast_EMA_Period2 , Slow_EMA_Period2, Signal_Period2, PRICE_CLOSE, MODE_SIGNAL, 1 );
   MACD_Value1_2 = MACD_MAIN1_2 - MACD_SIGN1_2 ;


   MACD_MAIN1_3 = iMACD(NULL, 0, Fast_EMA_Period3 , Slow_EMA_Period3, Signal_Period3, PRICE_CLOSE, MODE_MAIN, 1 );
   MACD_SIGN1_3 = iMACD(NULL, 0, Fast_EMA_Period3 , Slow_EMA_Period3, Signal_Period3, PRICE_CLOSE, MODE_SIGNAL, 1 );
   MACD_Value1_3 = MACD_MAIN1_3 - MACD_SIGN1_3 ;


   OS = OrderSelect(Ticket_L, SELECT_BY_TICKET);  

   //買いポジションのエグジット
if(    ((MACD_Value1_1 <0 && MACD_Value1_2 <0) || ( OrderOpenPrice() - LossCut * Point >= Close[1] ))
       && ( Ticket_L != 0 && Ticket_L != -1 ))
    {     
      Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Red);
      if( Exit_L ==1 ) {Ticket_L = 0;}
    }    

   OS = OrderSelect(Ticket_S, SELECT_BY_TICKET); 

   //売りポジションのエグジット
   if(    ((MACD_Value1_1 >0 && MACD_Value1_2 >0) ||( OrderOpenPrice() + LossCut * Point <= Close[1] ))
       && ( Ticket_S != 0 && Ticket_S != -1 ))
    {     
      Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
      if( Exit_S ==1 ) {Ticket_S = 0;} 
    }   

   //買いエントリー
   if(    MACD_Value1_1 >0 && MACD_Value1_2 >0 && MACD_Value1_3 >0 && MACD_MAIN1_3 >0
       && ( 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,Red);
    }

   //売りエントリー
   if(    MACD_Value1_1<0 && MACD_Value1_2 <0 && MACD_Value1_3 <0 && MACD_MAIN1_3 <0
       && ( 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,Blue);     
    } 
    
     
   return(0);
  }

###

関連記事

[FX] Trend Scalp というインジケーター

Trend Scalp というスキャルピング用のインジケーターがありました。 ダウンロ

記事を読む

[FX] 平均足を使った自動売買プログラム

平均足のメリット・デメリット 株やFX のチャートで価格の推移を表す ローソク足は有名ですが、同じ

記事を読む

ベアファンドに注目(TECS と NN韓国KOSPIベアETN)

最近、アメリカ株が高金利政策によって下げ基調になってきましたよね。 下はアメリカ株 S&

記事を読む

「5億円、年に1000万円使っても50年」・・・それ間違ってますよ

5億円、年に1000万円使っても50年 現在 TVで流れているジャンボ宝くじの CM「ジャンボ兄ち

記事を読む

【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(4)

「【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(3)」の続き

記事を読む

FX 再開します / 業者の選定

FX とは外国為替トレードのあれです。 じつは昔、忙しかったころに自動売買(パソコンのプログラ

記事を読む

ラテ・マネーを惜しみましょう

ラテ・マネーとはコーヒーのラテを買うくらいの些細な金額のこと。 対象はコーヒーとは限らず、少額

記事を読む

0.01%ルール

『Just Keep Buying』の著者 ニック・マジューリ の『The Wealth L

記事を読む

FX 2015年2月第2週デモ口座運用状況

2/09 09:45:10 buy 1 usdjpy 118.982 2

記事を読む

貯蓄型の生命保険

主に使っている銀行口座(普通預金口座)の残高が 8ケタになっていたので、相続目的で生命保険に入ること

記事を読む

Message

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

S&P500 から ゴルプラへ乗り換え中

以前の記事「S&P500 よりゴルプラ」の続きです。 S

イラン攻撃

昨日からイスラエル&アメリカによるイラン攻撃の話でもちきりですね。

S&P500 よりゴルプラ

「ゴルプラ」とは、日興アセットマネジメントの投資信託「Tracers

楽天SCHD順調(筋書き通り?)

https://www.youtube.com/watch?v=o9V

NF日本高配当70 から GS日本株・プラス(通貨分散コース)へ

超高配当(現時点では)の「GS日本株・プラス(通貨分散コース)」をとり

→もっと見る

  • 2026年3月
     1
    2345678
    9101112131415
    16171819202122
    23242526272829
    3031  
  • アクセスカウンター
PAGE TOP ↑