*

【FX】 久々にプログラム書いてみる(日足ブレイクアウト手法)

公開日: : マネー

Youtube で日足(ひあし)の手法を披露あるいは検証している方が多いです。

日足のいいところは1日1回見ればいいところです。

つまり、朝出勤前に 5分程度で仕掛けができるので、勤め人の方には最適のものと思います。

私も1つ思いついたので、久々にプログラム(EA)を書いてみました。

日足のブレイクアウト手法です。

買い(ロング)

エントリ

N日間の最高値(さいたかね)を前日の終値(おわりね)が超えると、その日の始値(はじめね)で買いエントリ

損切り

前日の低値(ひくね)

トレーリングストップ

ロング保有中にもN日間の最高値を終値が上回るたびに損切りを低値に移動

売り(ショート)

エントリ

N日間の最低値(さいひくね)を前日の終値(おわりね)が下回ると、その日の始値(はじめね)で売りエントリ

損切り

前日の高値(たかね)

トレーリングストップ

ショート保有中にもN日間の最低値を終値が下回るたびに損切りを高値に移動

チャート


ドル円で N=7 に設定。青の点線はロング、赤の点線はショートの保有を示します。

ドル円の 2022/1/1~2023/12/11(昨日)までのバックテストでは、

初期証拠金 10000ドル、0.1ロット(10000通貨)で純益 3052ドル、プロフィットファクター 4.17、勝率 62.50%となりました。

保有日数も結構長いためにトレード回数が少ないです(その分一回あたりの利益も大きいですが)。

絶対ドローダウンが 157.80 ドルなので、証拠金は 10000ドルも要らない、200ドルですんだということです。

200ドルで 3052ドルの利益が得られたと考えれば爆益なのではないでしょうか。

ナンピンなし、マーチンなし、ワンポジで損切りアリの EA でですよ。

資金管理機能をつければさらに爆益になることは間違いないでしょう。

人間心理に基づいた方法なので、通貨ペアにはあまり関係しないかなと期待していたのですが、結構通貨ペアを選ぶようです。

USDJPY 以外では EURCAD、NZDCAD、CADJPY の成績がいいです(プロフィットファクター 2以上)が、それ以外ではそこそこかダメダメ。

ブレイクアウトのあとしばらく順行してくれないと利益にならないので、数日~数十日間のトレンドがよく起きる通貨ペアがいいわけですけどね。

プログラム

// jjDayBreakOut04.mq4
// N日間の最高値を超えると買い
//  トレーリングストップ付き

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

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

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

int start(){

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

if (Close[1] > High[ iHighest(Symbol(),0,MODE_HIGH,N_Day,2) ]){ lc1 = Low[1] ;}
if (Close[1] < Low[ iLowest(Symbol(),0,MODE_LOW,N_Day,2) ]){ lc2 = High[1] ;}

//買いポジションのエグジット
OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
OOPL = OrderOpenPrice();
if(
Close[1] <= lc1
&& ( 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] >= lc2
&& ( 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] > High[ iHighest(Symbol(),0,MODE_HIGH,N_Day,2) ]
&& ( 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);
lc1 = Low[2] ;
}

//売りエントリー
if(
Close[1] < Low[ iLowest(Symbol(),0,MODE_LOW,N_Day,2) ]
&& ( 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);
lc2 = High[2] ;
}
return(0);
}

###

 

関連記事

米国ドル建てMMF がおいしい季節です

MMF は投資信託の一つですが、超安全な公債を運用しているもので、利回りはほぼ確定。 ただし、

記事を読む

[FX]yasciiHA04a パラメーター変更

以前の記事「yasciiHA04a 実戦投入」の続きです。先週金曜日は指標発表のため EA は止

記事を読む

2023-7-10 米国債券投資の方針変更について

以前の記事「2023/3/1 外国債券(既発債)続伸中」でも書きましたが、米国の国債(既発債)と社債

記事を読む

超シンプルな自動売買プログラム(11) 前週の平均値と逆張り(3) 改良型

以前の記事「超シンプルな自動売買プログラム(11) 前週の平均値と逆張り」で作ったプログラムを「

記事を読む

【FX】朝スキャ(3)

朝スキャの実験 以前の記事「朝スキャ(2)」で書いたように、開いたばかりの TitanFX のリア

記事を読む

待ちぼうけ?

先祖代々受け継いだ山で、せっせと木を切ってそれを乾燥させて薪を作り、里人に売って生計をたてている 木

記事を読む

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

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

記事を読む

【FX】Axiory 新ナノ口座(3つめ)発進

以前の記事「Axiory でハロウィーンキャンペーンやっています」で新設して、10万円を入金して 1

記事を読む

リアルタイムクラウドフィルタ

昨日の記事「一目均衡表(関数版)」で、リアルタイム雲(時間がずれていない雲)のフィルタを作る方法

記事を読む

metatrader4 は linux で動きます

うちの Linux(Zorin6.4)マシンで、Windows 用の MetaTrader4

記事を読む

Message

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

本多静六のようになりたいなら、その秘訣を公開しよう―「日本一の幸福者」の“成功習慣”づくり / 本多 静六(2)

以前読んだ本ですが、また引っ張り出して再読中です。 本多静六先生

カセットテーププレーヤー(デジタル化 MP3変換 USB接続)

買ってはいませんが、面白いものを見つけました。アマゾンで 35

MOSWAG RCA USBケーブル

前回の「USB – RCA変換ケーブル(384KHz/24-b

Nuro光開通

本日、自宅のマンション(築36年)にNuro光が開通しました。

USB – RCA変換ケーブル(384KHz/24-bit Hi-Res DAC搭載)

「USB - RCA変換ケーブル」とありますが、実際は「ケーブ

→もっと見る

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