MACDバーシステムの改良(4) 早めの利益確定
公開日:
:
最終更新日:2015/02/25
マネー
あの自動売買システム、しつこく変更しています。
上が変更前。下が変更後。 若干違いますね。
なにを変更したかというと、利益確定(定額固定)の機能をつけ、それに合わせてロスカットの値も最適化しました。
利益が出ているのに反転して負けトレードになっているのが結構あるのでは、と思ってつけ加えました。
今のところテストしやすいようにという一時的な理由で、ドル円専用になりました。
変更後は、
- プロフィットファクター 1.21 ⇒ 1.23
- 勝率 26.39% ⇒ 27.20%
- 総損益 +15337ドル⇒ + 18028ドル(元手 10000ドル)
- 最大ドローダウン 27.89% ⇒ 21.45%
といずれも改善。
22ヶ月で 2.8倍(年利 75%)を達成できるようになりました。
これからはパラメータの最適化をやりながら、トレーリングストップでも加えますかね。
関連記事
プログラムソース
// // yasciiMACD_3cross04.mq4 // TakeProfit & LossCut(ドル円専用) // //マジックナンバーの定義 #define MAGIC 42551 //パラメーターの設定// 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 LC = 1.0 ; // Loss Cut (円) extern double TP = 1.1 ; // Take Profit (円) //変数の設定// 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()-LC >= Close[1] ) || ( OrderOpenPrice()+TP <= 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()+ LC <= Close[1] ) || ( OrderOpenPrice()-TP >= 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); }
関連記事
-
永久不滅ドットコムで Amazonギフト券
* 最近、TVコマーシャルもやっている永久不滅ドットコム。 永久不滅ポイントは有効期限がない
-
[FX] 2019年11月終了
昨日で 11月の相場が終了しました。 11月は第3週は気迷い風でしたが、第4週はレパトリエーシ
-
超シンプルな自動売買プログラム(12) 前週の平均値と逆張り 時間特性
1時間だけのトレード 以前の記事「超シンプルな自動売買プログラム(11) 前週の平均値と逆張り
-
アメリカ株投資 2021-9/2
「アメリカ株投資 2021-8-28」の続きです。 純益が 191.1万円になりました
-
[FX] お勧めインディケーター ADXcrosses
私が愛用するインディケーターは、一目均衡表 、平均足、ADX、VQ が柱です。 Schaff
-
【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(3)
「【FX】なかなかすごいブレイクアウト Inquisition Breakout EA(2)」の続き
-
2023-06-02 ポートフォリオ改変
「2023-05-31 ポートフォリオ改変」の続きです。 私の保有している日本株は、
-
【FX】新戦略のためのデモトレード(2)
「【FX】新戦略のためのデモトレード」の続きです。 Dark Venus と Connect
-
[FX] ボリンジャーバンド順張り逆マーチンゲール版
昨日の記事「 ボリンジャーバンド順張りシンプル版」のプログラムを改良してみました。 最大ドロー
-
超シンプルな自動売買プログラム(7) はらみ線(はらみ足)
超シンプルな自動売買プログラムとして、日本古来のローソク足での定番「はらみ足」を利用したものをご