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);
}
関連記事
-
-
田平雅哉のFX「スイングトレード」テクニック / 田平 雅哉
田平雅哉のFX「スイングトレード」テクニック (WINNER’S METHOD
-
-
【FX】Alpinist という EA(2)
以前の記事「【FX】Alpinist という EA」の続きです。 Alpinist という面白
-
-
【FX】Black Diamond V4 という EA
Black Diamond V4 という EA については以前も触れました。 最新の Blac
-
-
[FX]前週の平均値と順張り&逆張り EA化(3) 半自動のススメ
前回の記事「前週の平均値と順張り&逆張り EA化(2)」でお披露目したプログラムをお昼にサーバー
-
-
ディナポリ手法で利用するDMA
ディナポリ手法という FX 手法の体系があるのですが、そこでは利用する移動平均線に DMA という特
-
-
FX デモ口座運用実績(2014/12/16~2015/1/15)
Windows VPS サーバー上での FX デモ口座(FXCM)の運用が1ヶ月になったので、実
-
-
【FX】ボリンジャーバンド順張り手法
逆張りで使う人が多いボリンジャーバンドですが、開発者のボリンジャーさんは順張りで使えとおっしゃってい
-
-
HL Band(High Low Band) について
チャートでは HL Band というのをよく使います。 High Low Band の略で、あ
-
-
アメリカ株投資 2021-4-29
本日時点での純益は初めて 90万円を超えました。 * 前回の記事「アメリカ株投資








