*

超シンプルな自動売買プログラム(7) はらみ線(はらみ足)

公開日: : 最終更新日:2015/02/24 マネー

超シンプルな自動売買プログラムとして、日本古来のローソク足での定番「はらみ足」を利用したものをご紹介します。

孕石(はらみいし)は女性の間では有名ですが、はらみ足(はらみ線)とは1本前のローソク足の実体の中に次の足の実体が含まれるもの。

ラリー・ウィリアムズも信奉しているくらいポピュラーなものです。

はらみ足のうち、「陽の陰はらみ」と「陰の陽はらみ」を売買シグナルにした EA を作ってみました。

そのままだと成績がいまいちなので、「陰の陽はらみ」では「その前が陰線」、「陽の陰はらみ」には「その前が陽線」という前提を加えたところ、いい結果に。

決済条件は損切り 20pips固定、利益確定 40pips固定のみとしました。

ドル円 5分足(2014/1/1 – 2015/1/1)

 

え、「たいしたことないじゃないか」って?

いえ、私が気に入っているのは、

  1. 5分足という短い時間足であること
  2. グラフの前半のドル円相場がトレンドでない時期にもそこそこ稼げている
  3. むしろ後半の強い上昇トレンドでは成績がふるわない

という、これまで私の作ってきた EA とは真逆の性格を持っているからです。

もうちょっと研究してみます。

ちなみに、損切り 50pips、利益確定 420pips とすると、下のように売買回数がぐんと少なくなりますが、最大ドローダウンをそのままに利益を伸ばせます。

ただポジションの保有時間が長くなります(最大7ヶ月)。

プログラムソース

//
// yasciiSimple06
// はらみ足
//

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

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

extern double ILC = 20.0 ;
extern double TP = 40.0 ;

//変数の設定//
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()
  {

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

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

   //買いポジションのエグジット
   OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);  
   OOPL = OrderOpenPrice();   
   if( (Close[1] < OOPL - lc*Point || Close[1] > OOPL + tp*Point)
      && (Ticket_L != 0 && Ticket_L != -1 ))
    {     
      Exit_L = OrderClose(Ticket_L,Lots,Bid,Slip,Blue);
      if( Exit_L ==1 ) {Ticket_L = 0;}
    }    

   //売りポジションのエグジット
   OS2 = OrderSelect(Ticket_S, SELECT_BY_TICKET); 
   OOPS = OrderOpenPrice();
   if( (Close[1] > OOPS + lc*Point || Close[1] < OOPS - tp*Point)
       && (Ticket_S != 0 && Ticket_S != -1 ))
    {     
      Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Red);
      if( Exit_S ==1 ) {Ticket_S = 0;} 
    }   

   //買いエントリー
   if( Close[1] > Open[1] && Close[2] < Open[2] && Close[3] < Open[3] && Close[3] > Close[2]
       &&  Close[2] < Open[1] && Open[2] > Close[1]
       && ( 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,Blue);
    }

   //売りエントリー
   if( Close[1] < Open[1] && Close[2] > Open[2] && Close[3] > Open[3] && Close[3] < Close[2]
       &&  Close[2] > Open[1] && Open[2] < Close[1]
       && ( 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,Red);     
    } 

   return(0);
  }

###

関連記事

FX 本のジョーク

FX の本を読んでいると、次のようなジョークが書いてありました。 友達と山道を歩いていると

記事を読む

【FX】Elite Tactics という EA

Elite Tactics という、またまた拾ってきた EA(自動売買ソフト)のお話。 B

記事を読む

VQ を使ったシンプルな自動売買システム (2)

今日はインジケーターの VQ を使ったシステムの再検証、というか宿題の回答。 前回の記事「VQ

記事を読む

[FX] MACDマルチタイムフレーム 15分足用(3) 改良その2

前回の記事「 MACDマルチタイムフレーム 15分足用(2) 改良 」の続きです。 お得意のタ

記事を読む

日本の 60代で「貯蓄ゼロ」の割合が 18.3%とか

「60代で「貯蓄ゼロ」、割合はなぜこんなにも多いのか。」という LIMO の記事(著者:石津大希)が

記事を読む

【FX】ThreeTrader の Rawゼロ口座を追加で開設(2)

前回の記事「ThreeTrader の Rawゼロ口座を追加で開設」の続きです。 * じ

記事を読む

ビットコインについて考えてみた

ビットコインは数ある電子通貨の一つですが、ほかのも似たようなものなので ビットコインについて

記事を読む

nanaco カードを作りましょう(おトクな方法)

* 私は週に3回はセブンイレブンに行きます。 新生銀行、りそな銀行、滋賀銀行、関西アーバン銀

記事を読む

ロト7で4億円当選した男の話

ロト7で4億円当選した男の話が載っていました。>ロト7で4億円当選した男がネット上で明かした2年後の

記事を読む

[FX] 15分足スキャルピング自動運転プログラム

最近は FX関係のブログをいろいろ読んでいます。 「MT5・MT4を使ってFX」というサイトで

記事を読む

Message

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

【FX】自動売買について

FX の自動売買とはコンピュータに自動売買ソフトをインストールして F

【FX】Voorloper という EA(6) 4月分トレード結果

Voorloper という EA は、主力で使っている Dark Ve

【FX】株分け

今週は株分けを行いました。 園芸ではなく、FX 口座(Exnes

リチャード・マイケル・ナッシュの資産運用の学校

★★★☆☆ リチャード・マイケル・ナッシュという人はアメリカ生ま

【FX】2024年4月総括

「【FX】2024年4月第1,2,3,4週総括」の続きです。 202

→もっと見る

  • 2024年5月
     12345
    6789101112
    13141516171819
    20212223242526
    2728293031  
  • アクセスカウンター
PAGE TOP ↑