*

[FX] 一目均衡表+STC フィルタ 完成版

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

以前ここで発表した一目均衡表のシステムに初期ロスカットをつけたものです。

Schaff Trend Cycle フィルタをつけているので逆向き暴発は多少防げると思います。

なにもつけないほうが爆発的な利益がとれることもありますが、かなりバクチっぽいです。

いろいろつけたので安全性は高めと思います。

一目均衡表なので、15分足でも使えます。

EURUSD あたりでそこそこいい結果がでています。

Indicators の Downloads フォルダに STC_pure_S.mq4 を入れてくださいネ。

プログラムソース

//
// yasciiIchimoku03c
//           一目均衡表 + HL trailing stop + STC filter + Time filter
//         Indicators\Downloads フォルダに STC_pure_S.mq4 を入れてください

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

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

extern int MA_Short=8;
extern int MA_Long=13;
extern int MA_Cycle=5;
int PriceType=0;
extern int SigPeriod=3;

extern int BB_Period=20;
double Deviation = 1.0;

extern double ILC = 20.0 ;

extern int in_time = 10; // 取引開始時間
extern int out_time = 22; // 取引停止時間

int       Tenkan_sen=9;
int       Kijun_sen=26;
double    Senkou_span_b=52;

//変数の設定//
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 ;

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

   double ten1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 1, 1); double kij1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 2, 1); double ten2 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 1, 2); double kij2 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 2, 2); double cla1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 3, Kijun_sen); double clb1 = iIchimoku( NULL, 0, Tenkan_sen, Kijun_sen, Senkou_span_b, 4, Kijun_sen); double FastHH2 = Low[iHighest(NULL, 0, MODE_HIGH, Fast_period, 2)]; double FastLL2 = High[iLowest(NULL, 0, MODE_LOW, Fast_period, 2)]; double stc1 = iCustom(NULL,0,"Downloads\\STC_pure_S",MA_Short,MA_Long,MA_Cycle,PriceType,SigPeriod, 0, 1); double stc2 = iCustom(NULL,0,"Downloads\\STC_pure_S",MA_Short,MA_Long,MA_Cycle,PriceType,SigPeriod, 1, 1);
 
   OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET); 
   OOPL = OrderOpenPrice();
   if( (Bid < LL1 || ( OOPL - lc*Point >= Bid ))
       && ( 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( (Ask > HH1 || ( OOPS + lc*Point <= Ask )) && ( Ticket_S != 0 && Ticket_S != -1 )) { Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue); if( Exit_S ==1 ) {Ticket_S = 0;} } //暴落対策(終わり) if (Volume[0]>1 || IsTradeAllowed() == false) return(0) ;

   //買いポジションのエグジット
    OS1 = OrderSelect(Ticket_L, SELECT_BY_TICKET);
    OOPL = OrderOpenPrice();
    if( 
            (ten1 < kij1 || Close[1] < cla1 || Close[1] < clb1 || Close[1] < FastHH2) // && ( 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( (ten1 > kij1 || Close[1] > cla1 || Close[1] > clb1 || Close[1] > FastLL2 ) // 
          && ( Ticket_S != 0 && Ticket_S != -1 ))
    {   
      Exit_S = OrderClose(Ticket_S,Lots,Ask,Slip,Blue);
      if( Exit_S ==1 ) {Ticket_S = 0;}
    } 

   //買いエントリー
   if( ( ten1 > kij1 || ( ten1 == kij1 && ten2 == kij2 && ten1 > ten2 ))  
       && Close[1] > cla1 && Close[1] > clb1 && stc1 > stc2
       && (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( ( ten1 < kij1 || ( ten1 == kij1 && ten2 == kij2 && ten1 < ten2 )) 
       && Close[1] < cla1 && Close[1] < clb1 && stc1 < stc2 && (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] 来週は yasciiHA04c.ex4 そのまま継続

来週稼働予定の EA は先週と同じ yasciiHA04c.ex4 と yasciiADXcro

記事を読む

[FX] ロンドンフィキシングで自動売買(2)

「 ロンドンフィキシングで自動売買」という記事の続きです、 昨日の「FX マイニング開始」とは

記事を読む

【FX】SmartFX Ultimate という EA

SmartFX Ultimate という EA を見つけ、バックテストでなかなか良好だったので、先週

記事を読む

【FX】ECMarkets リアル口座運用中

海外 FX 業者 ECMarkets(ECM)は結局 TariTali 経由で口座を開きました。

記事を読む

日経平均史上最高値 さらに上放れかも?

日経平均が最高値をまた超えました。 本日の終値は 41580円。 日足チャートでは ちょ

記事を読む

【FX】驚きの EA かも

以前、他人に譲った仕事(遠隔画像診断)が先月から2つほど帰ってきまして、最近夕方からの時間がそれらに

記事を読む

[FX] フィボナッチ・トレーリングストップ(初期型)

最近本業が忙しくて改良のネタをいろいろ思いつくのですが、なかなかプログラミングしてテストできませ

記事を読む

【FX】Zigzag Extremum Point という EA

最近も新しい EA の検証を続けています。 割合おもしろいなと思ったものに、この ジグザグ エ

記事を読む

商売は、運。

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

記事を読む

[FX]ボリ平ロンドンコーリング検証

前回の記事「ロブ・ブッカーのNY Box 検証」でもちょっと書きましたが、ボリ平さん(女性です)のロ

記事を読む

Comment

  1. onem より:

    こんばんわ。
    EAは問題なく動作いたしますがインディケータ側のSTC_pure_S.mq4側が少し多めのエラーを出します。

    おそらく、エディタ側の変換がうまくいっていないかと思われます。よろしければご修正の程お願いいたします。

    • kotaro.yasuiwa@gmail.com より:

      これもワードプレスの変換ミスですね。お知らせありがとうございました。
      リンク方法を変えておきました。一応動くことを確認したので大丈夫かと思います。
      よろしくお願いします。

kotaro.yasuiwa@gmail.com へ返信する コメントをキャンセル

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

WCM 世界成長株厳選ファンド(予想分配金提示型)【愛称】ネクスト・ジェネレーション

「WCM 世界成長株厳選ファンド(予想分配金提示型)」という投資信託は

無題その1

人間の目が最も感度がいい色は黄色。 なぜ? たぶんこれは太陽の

あっちのゴルカン

昨日、「Tracers MSCIオール・カントリー・ゴールドプラス」に

新しい事務所が欲しい

近々、高槻の事務所を閉めることになりそうで、自宅の近くに新たに事務所を

蛍光灯売ってた

FL20型の蛍光灯は2027年末までに製造・輸出入が禁止されます。

→もっと見る

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