スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
スポンサー広告 | CM(-) | --/--/--(--) --:--

JK_Anomaly_EA_1.0.mq4(曜日/日時などを指定して自動売買するEA)

JK_Anomaly_EAとは?

JK_Anomaly_EAは、曜日/日時などを指定して自動売買するEAです。

EA名称の通り、アノマリーなトレードをすることができます。


JK_Anomaly_EA_1.0.mq4:MQL4プログラムソース

JK_Anomaly_EA_1.0.mq4のMQL4プログラムソースを以下に示します。

//+------------------------------------------------------------------+
//|                                            JK_Anomaly_EA_1.0.mq4 |
//|                                     Copyright (c) 2007, 人生解放 |
//|                                http://winnerlife.blog35.fc2.com/ |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| EA機能仕様                                                       |
//+------------------------------------------------------------------+
//・パラメータでトレードする日・曜日・時間を指定できるようにする。
//・指定されたパラメータに従って自動売買する。


//+------------------------------------------------------------------+
//| 著作者                                                           |
//+------------------------------------------------------------------+
#property copyright "Copyright (c) 2007, 人生解放"
#property link      "http://winnerlife.blog35.fc2.com/"


//+------------------------------------------------------------------+
//| パラメータ                                                       |
//+------------------------------------------------------------------+
extern string X = "Basic Settings"; //基本設定
extern int    MagicNumber = 1001;   //マジックナンバー
extern double TakeProfit  = 55;     //リミット[pips]
extern double StopLoss    = 50;     //ストップ[pips]
extern double Lots        = 0.1;    //ロットサイズ
extern int    Cmd         = OP_BUY; //エントリー方法[OP_BUY/OP_SELL]
extern int    Slippage    = 3;      //スリッページ

extern string XX = "Order Settings";     //新規注文設定
extern bool CheckOrderDay = true;        //日の判定有無
extern int  OrderDay = 10;               //日
extern bool CheckOrderDayOfWeek = false; //曜日の判定有無
extern int  OrderDayOfWeek = 1;          //曜日
extern bool CheckOrderHour = true;       //時間の判定有無
extern int  OrderHour = 22;              //時間
extern bool CheckOrderMinute = true;     //分の判定有無
extern int  OrderMinute = 30;            //分
extern bool CheckOrderSeconds = true;    //秒の判定有無
extern int  OrderSeconds = 0;            //秒

extern string XXX = "Close Settings";    //決済注文設定
extern bool CheckCloseDay = true;        //日の判定有無
extern int CloseDay = 10;//日            //日
extern bool CheckCloseDayOfWeek = false; //曜日の判定有無
extern int CloseDayOfWeek = 1;//曜日     //曜日
extern bool CheckCloseHour = true;       //時間の判定有無
extern int CloseHour = 1;//時            //時間
extern bool CheckCloseMinute = true;     //分の判定有無
extern int CloseMinute = 0;//分          //分
extern bool CheckCloseSeconds = true;    //秒の判定有無
extern int CloseSeconds = 0;//秒         //秒


//+------------------------------------------------------------------+
//| 開始関数                                                         |
//+------------------------------------------------------------------+
int start()
{
   if((TimeDay(TimeCurrent()) == OrderDay
      || CheckOrderDay == false)
   &&(TimeDayOfWeek(TimeCurrent()) == OrderDayOfWeek
      || CheckOrderDayOfWeek == false)
   &&(TimeHour(TimeCurrent()) == OrderHour
      || CheckOrderHour == false)
   &&(TimeMinute(TimeCurrent()) == OrderMinute
      || CheckOrderMinute == false)
   &&(TimeSeconds(TimeCurrent()) == OrderSeconds
      || CheckOrderSeconds == false))
   {
      if(Cmd == OP_BUY){
         OrderSend(Symbol(),
                   Cmd,Lots,
                   Ask,
                   Slippage,
                   Ask-StopLoss*Point,
                   Ask+TakeProfit*Point,
                   "",
                   MagicNumber,
                   0,
                   Red);
         return(0);
      }  
      if(Cmd == OP_SELL){
         OrderSend(Symbol(),
                   Cmd,Lots,
                   Bid,
                   Slippage,
                   Bid+StopLoss*Point,
                   Bid-TakeProfit*Point,
                   "",
                   MagicNumber,
                   0,
                   Blue);
         return(0);
      }  
   }

   if((TimeDay(TimeCurrent()) == CloseDay
      || CheckCloseDay == false)
   &&(TimeDayOfWeek(TimeCurrent()) == CloseDayOfWeek
      || CheckCloseDayOfWeek == false)
   &&(TimeHour(TimeCurrent()) == CloseHour
      || CheckCloseHour == false)
   &&(TimeMinute(TimeCurrent()) == CloseMinute
      || CheckCloseMinute == false)
   &&(TimeSeconds(TimeCurrent()) == CloseSeconds
      || CheckCloseSeconds == false))
   {
      for(int i = 0; i < OrdersTotal(); i++)
      {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) == false)
         {
            break;
         }

         if(OrderSymbol() == Symbol()
         && OrderMagicNumber() == MagicNumber)
         {
            if(OrderType() == OP_BUY)
            {
               OrderClose(OrderTicket(),
                          OrderLots(),
                          Bid,
                          Slippage,
                          Yellow);
               return(0);
            }  

            if(OrderType() == OP_SELL)
            {
               OrderClose(OrderTicket(),
                          OrderLots(),
                          Ask,
                          Slippage,
                          Lime);
               return(0);
            }  
         }
      }
   }

   return(0);
}

JK_Anomaly_EA | CM(0) | 2012/08/30(木) 02:02
コメントの投稿
題名
名前
メールアドレス
URL
コメント
PASS
SECRET管理者にだけ表示を許可する


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。