*

ディナポリ手法で利用するDMA (3) HLバンドトレイリングストップ

公開日: : 最終更新日:2021/06/03 マネー

前回の記事「ディナポリ手法で利用するDMA」で、ディナポリ移動平均線を使った自動売買プログラムを作りましたが、25本線の向きをフィルタに使ってもあまりかんばしい結果がでませんでした。

HLバンドトレイリングストップを導入してみます。

これは、HL_period という期間内の終値の最高値と再低値を、それぞれ売りの場合の損切り、書いの場合の損切りに設定するものです。

  • double HH1 = High[iLowest(NULL, 0, MODE_HIGH, HL_period, 1)];
  • double LL1 = Low[iHighest(NULL, 0, MODE_LOW, HL_period, 1)];

 

のように書けば、HH1 に1つ目のバーから数えて期間内の最高値が入力され、LL1 には最低値が入力されます。

以前、終値だけの幅を考えて

  • double HH1 = Close[iHighest(NULL, 0, MODE_CLOSE, HL_period, 1)];
  • double LL1 = Close[iLowest(NULL, 0, MODE_CLOSE, HL_period, 1)];

のようにヒゲを無視した書き方を採用していましたが、自分でもしっくりいかないので、ヒゲを含めたほうをとることにします。

これでうまくいけばトレンド期間のときの逆行による損失を減少できるかもしれません。

トレンドでないときにはあまり貢献しないかもしれませんが。

ポンド円 4時間足での成績が

利益は 15.14%。勝率 36.8%、最大ドローダウンが 5.35%。利益と勝率はわずかに改善。ドローダウンはやや増加ぎみです。

125回の動作で、原法よりは半分以下の動作回数なので効率はよくなった(長いトレンドの中で何度も利確してまた入り直すなどがなくなった?)のかも。

プログラムソース

 

//
// ysDMAX01c.mq4
//
// 2019.9.23 ディナポリチャート
// エントリ: 終値が 3x3DMA を上抜け
// イグジット: 終値が 7x5DMA を下抜け
// フィルタ: 3本の DMA が順並びのとき
//                 HLバンドトレーリングストップを導入

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

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

extern double ILC = 40 ; 初期ロスカット
extern int HL_Period = 9; //HLトレーリングストップの期間

extern int in_time = 3; // 開始時間(サーバー時間 0から)
extern int out_time = 20; // 終了時間(サーバー時間 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 start(){

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

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

double HH1 = High[iLowest(NULL, 0, MODE_HIGH, HL_Period, 1)];
double LL1 = Low[iHighest(NULL, 0, MODE_LOW, HL_Period, 1)];

double dma1 = iMA(NULL,0,3,0,MODE_SMA,PRICE_CLOSE,3);
double dma2 = iMA(NULL,0,7,0,MODE_SMA,PRICE_CLOSE,5);
double dma3a = iMA(NULL,0,25,0,MODE_SMA,PRICE_CLOSE,5);
double dma3b = iMA(NULL,0,25,0,MODE_SMA,PRICE_CLOSE,6);

//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();

if( ( Close[1] < dma2 || ( OOPL – lc * Point >= Close[1] ) || Bid <LL1 )
&& ( Ticket_L != 0 && Ticket_L != -1 ))
{
Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Red);
if( Exit_L ==1 ) {Ticket_L = 0;}
}

//売りポジションのエグジット
OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET);
OOPS = OrderOpenPrice();

if( ( Close[1] > dma2 ||( OOPS + lc * Point <= Close[1] ) || Ask > HH1)
&& ( Ticket_S != 0 && Ticket_S != -1 ))
{
Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
if( Exit_S ==1 ) {Ticket_S = 0;}
}

//買いエントリー
if( Close[1] > dma1
// && dma3a > dma3b
&& 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,Red);
}

//売りエントリー
if( Close[1] < dma1
// && dma3a < dma3b
&& 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,Blue);
}

return(0);

}

関連記事

###

関連記事

株って儲かりますか?

この前知人と話していて、投資の話になりました。 その人が株でだいぶ損をしていると言うので、

記事を読む

米国優先株投資について

優先株というのは通常株とは違い、 議決権がない 配当は社債より高い(ある程度固定され

記事を読む

【FX】2024年4月第1,2週総括

4月第2週の FXトレード時間が終わりましたので、総括したいと思います。 第1週も併せてこんな

記事を読む

[FX] Tokyo Box(ロンドン・コーリング)プログラムにトレーリングストップをつける(3)

昨日の記事「 Tokyo Box(ロンドン・コーリング)プログラムにトレーリングストップをつける(2

記事を読む

マーチンゲール法

* マーチンゲール法というのは、簡単に言うと勝つまで倍賭けするという、古典的なギャンブルの賭

記事を読む

商売は、運。

昔『¥マネーの虎』という TV番組があったそうな。 私は何度か見かけたことはあったのですが、す

記事を読む

わが子と考えるオンリーワン投資術 (ウィザードブックシリーズ)

わが子と考えるオンリーワン投資術 (ウィザードブックシリーズ) ジョン・モ

記事を読む

【FX】Yetti という EA

またまた FX の話です。 Yetti(イエティ)という自動売買プログラムがあります。

記事を読む

【FX】Rollover Miracle Greedy という EA

Rollover Miracle Greedy という EA があります。 例によってアメリカ

記事を読む

今どきのソーラーシステム

本日、ラジオを聴いていたら辛坊治郎がこんなことを言っていました。 最近は200万円くらいで

記事を読む

Message

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

3つのM

マーケティングの要素として「3つのM」というものがあります。それは、「

マルタイ 棒ラーメン 鹿児島 黒豚 とんこつ ラーメン 2食入 3袋

マルタイ 棒ラーメン 鹿児島

新宿中村屋 インドカリー ビーフスパイシー 200g×5箱入

中村屋 新宿中村屋 インドカリ

Windows11 どエラいエラー発覚

https://www.youtube.com/watch?v=7Tp

[FX] 新たな Tokyo Boxプログラム(2)

先日作製した Tokyo Boxプログラムは、少しずつ改良を加えていま

→もっと見る

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