システムトレード

MetaTrader 5での2つの移動平均線のクロス戦略
MetaTrader5
MetaTrader 5での2つの移動平均線のクロス戦略

アイデアの提供者: ITM7(リクエストとアイデア(MQL5限定)からインスパイアされました) MQL5コードの作者: Vladimir Karputov 追加点: iMAの呼び出しが、カスタム移動平均入力カラーの呼び出しに置き換えられました。テスター(ビジュアルモード)やチャートに添付された際に、このEAは移動平均インジケーターを異なる色で視覚化します。 2つの移動平均線(iMA)のクロスオーバーに加え、もう1つのiMA(移動平均)をフィルターとして使用します。 ポジションのロット計算は、手動または残高のリスクパーセントに基づいて行います。 トレード方法: ストップ、マーケットまたはリミットオーダー。このEAは、ストップロス、テイクプロフィット、トレーリングストップも設定します。 入力パラメータ: (追加点が強調表示されています) 「最初の移動平均のパラメータ」 最初の移動平均の期間 最初の移動平均のシフト 最初の移動平均のメソッド 最初の移動平均の色 「2番目の移動平均のパラメータ」 2番目の移動平均の期間 2番目の移動平均のシフト 2番目の移動平均のメソッド 2番目の移動平均の色 「3番目の移動平均のパラメータ」 3番目のインジケーター移動平均 - フィルター 3番目の移動平均の期間 3番目の移動平均のシフト 3番目の移動平均のメソッド 3番目の移動平均の色 「マネーマネジメントのパラメータ」 true → ロットは手動、false → 残高からのリスクのパーセント ロット(手動の場合のみ使用) 「トレーディングのパラメータ」 残高からの取引のリスクパーセント (pipsで) 0 → リミットオーダー ストップロス (pipsで) テイクプロフィット (pipsで) トレーリングストップ(「0」 → トレーリングなし) トレーリングステップ(トレーリングストップ > 0 の場合に使用) マジックナンバー スリッページ

2017.08.10
MetaTrader 5用のExp_ColorXMUV_Tmシステムトレーディングのご紹介
MetaTrader5
MetaTrader 5用のExp_ColorXMUV_Tmシステムトレーディングのご紹介

皆さん、こんにちは!今日は、MetaTrader 5で使えるExp_ColorXMUV_Tmというエキスパートアドバイザー(EA)についてご紹介します。このEAは、ColorXMUVの移動平均シグナルを基にしており、固定された取引時間の設定が可能です。 取引シグナルは、バーがクローズする際に、インジケーターの色が変わった時に形成されます。 指定した時間帯に取引を行うために、入力パラメータで取引時間を設定することができます。以下のように設定します: input bool   TimeTrade=true;      //指定した時間帯での取引を許可 input HOURS  StartH=ENUM_HOUR_0;  //取引開始時間(時) input MINUTS StartM=ENUM_MINUT_0; //取引開始時間(分) input HOURS  EndH=ENUM_HOUR_23;   //取引終了時間(時) input MINUTS EndM=ENUM_MINUT_59;  //取引終了時間(分) 操作開始時間には、時間と分の2つの変数が用意されており、終了時間にも同様の変数があります。 デフォルト設定では、EAは0:00から全ての取引セッションで取引を行い、23:59には全ポジションをクローズします。 開始時間が指定した終了時間より遅い場合、EAは翌日の指定された時間にポジションをクローズします。 このEAを正しく動作させるためには、ColorXMUV.ex5というコンパイル済みインジケーターファイルを<terminal_data_folder>\MQL5\Indicatorsに保存する必要があります。 また、TradeAlgorithms.mqhライブラリファイルを使用することで、非ゼロスプレッドを提供するブローカーでEAを使用し、ポジションオープン時にストップロスとテイクプロフィットを設定することができます。ライブラリの他のバリエーションは、以下のリンクからダウンロードできます:Trade Algorithms。 以下に示すテストでは、デフォルトの入力パラメータを使用しました。テスト中はストップロスとテイクプロフィットは使用していません。 Fig. 1. 取引例のチャート 2015年のGBPUSD H2のテスト結果は以下の通りです: Fig. 2. テスト結果チャート

2017.08.10
Exp_ColorJFatl_Digit_Tm - MetaTrader 5用のEA解説
MetaTrader5
Exp_ColorJFatl_Digit_Tm - MetaTrader 5用のEA解説

皆さん、こんにちは!今日は、MetaTrader 5で使えるExp_ColorJFatl_Digit_Tmというエキスパートアドバイザー(EA)についてお話しします。このEAは、ColorJFatl_Digitインジケーターのシグナルに基づいており、厳密な取引時間を設定することができます。 取引シグナルは、バーがクローズするときにインジケーターの色が変わった場合に形成されます。 取引時間は、入力パラメータで指定できますので、設定した時間帯に取引を行うことが可能です。 input bool   TimeTrade=true;      //指定した時間帯での取引を許可 input HOURS  StartH=ENUM_HOUR_0;  //取引開始時間(時間) input MINUTS StartM=ENUM_MINUT_0; //取引開始時間(分) input HOURS  EndH=ENUM_HOUR_23;   //取引終了時間(時間) input MINUTS EndM=ENUM_MINUT_59;  //取引終了時間(分) 開始時間と終了時間のために、それぞれ2つの変数が用意されています。デフォルト設定では、EAは0:00から取引を開始し、すべてのポジションは23:59にクローズされます。 開始時間が終了時間よりも遅い場合、EAは翌日、指定した時間にポジションをクローズします。 このEAを正しく動作させるためには、ColorJFatl_Digit.ex5のコンパイル済みインジケーターファイルを<terminal_data_folder>\MQL5\Indicatorsに保存する必要があります。 注意点として、TradeAlgorithms.mqhライブラリファイルを使用することで、非ゼロスプレッドを提供するブローカーと共に、ポジションオープン時にストップロスやテイクプロフィットを設定することができます。ライブラリの他のバリエーションは、こちらのリンクからダウンロードできます: Trade Algorithms。 以下のテスト結果は、デフォルトの入力パラメータを使用しており、テスト中にストップロスやテイクプロフィットは使用されていません。 Fig. 1. チャート上の取引例 2015年のEURUSD H4でのテスト結果は以下の通りです: Fig. 2. テスト結果のチャート

2017.08.10
Exp_PercentageCrossover: MetaTrader 5用のトレーディングシステム
MetaTrader5
Exp_PercentageCrossover: MetaTrader 5用のトレーディングシステム

皆さん、こんにちは!今日は、MetaTrader 5で使えるトレーディングシステム、Exp_PercentageCrossoverについてお話しします。このEA(エキスパートアドバイザー)は、PercentageCrossoverの色の変化に基づいており、トレードを行う時間帯を厳格に設定することができます。 取引シグナルは、バーがクローズする際に、インジケーターの方向(色)が変わったときに形成されます。 入力パラメータで取引時間を指定することができ、特定の時間帯にトレードすることが可能です。以下のように設定します: input bool   TimeTrade=true;      //指定した時間帯での取引を許可 input HOURS  StartH=ENUM_HOUR_0;  //取引開始時刻(時間) input MINUTS StartM=ENUM_MINUT_0; //取引開始時刻(分) input HOURS  EndH=ENUM_HOUR_23;   //取引終了時刻(時間) input MINUTS EndM=ENUM_MINUT_59;  //取引終了時刻(分) 開始時刻と終了時刻には、時間と分の2つの変数が用意されています。デフォルト設定では、EAは0:00から取引を開始し、23:59にすべてのポジションをクローズします。 もし開始時刻が指定した終了時刻よりも遅い場合、EAは次の日に指定した時刻にポジションをクローズしますので、注意が必要です。 このEAが正しく動作するためには、TotalPowerIndicatorX.ex5のコンパイル済みインジケータファイルを、<terminal_data_folder>\MQL5\Indicatorsに保存してください。 さらに、TradeAlgorithms.mqhライブラリファイルを使用することで、非ゼロスプレッドのブローカーと組み合わせて、ポジションオープン時にストップロスやテイクプロフィットを設定することが可能です。ライブラリの別のバリエーションは、こちらからダウンロードできます: Trade Algorithms。 以下に示すテストでは、デフォルトの入力パラメータを使用しました。テスト時にはストップロスおよびテイクプロフィットは使用していません。 図1. チャート上の取引例 2015年のUSDJPY H4におけるテスト結果は以下の通りです: 図2. テスト結果のチャート

2017.08.10
MetaTrader 5用のExp_TotalPowerIndicatorX - 効率的な取引のサポート
MetaTrader5
MetaTrader 5用のExp_TotalPowerIndicatorX - 効率的な取引のサポート

MetaTrader 5用の Exp_TotalPowerIndicatorX エキスパートアドバイザーは、TotalPowerIndicatorX オシレーターが生成するシグナルに基づいています。このEAは、厳密な取引時間を設定することも可能です。 取引シグナルは、バーがクローズする際に発生します。インジケーターの雲の色が変わった場合(主インジケータラインがシグナルラインをクロスした時)、取引が開始されます。 指定した時間帯に取引を行うために、入力パラメータで取引時間を設定できます: input bool   TimeTrade=true;      //指定した時間帯での取引を許可 input HOURS  StartH=ENUM_HOUR_0;  //取引開始(時間) input MINUTS StartM=ENUM_MINUT_0; //取引開始(分) input HOURS  EndH=ENUM_HOUR_23;   //取引終了(時間) input MINUTS EndM=ENUM_MINUT_59;  //取引終了(分) 取引の開始時間には2つの変数(時間と分)が用意されており、終了時間にも同様の変数があります。 デフォルト設定では、エキスパートアドバイザーは0:00から取引を開始し、すべてのポジションは23:59にクローズされます。 開始時間が指定した終了時間より遅い場合、エキスパートアドバイザーは翌日の指定した時間にポジションをクローズします。 エキスパートアドバイザーを正しく動作させるためには、TotalPowerIndicatorX.ex5 コンパイル済みインジケータファイルを <terminal_data_folder>\MQL5\Indicators に保存してください。 TradeAlgorithms.mqh ライブラリファイルは、ノンゼロスプレッドを提供するブローカーとともに、ポジションオープン時にストップロスとテイクプロフィットを設定するオプションを利用することを可能にします。ライブラリの他のバリエーションは、以下のリンクからダウンロードできます: Trade Algorithms。 以下のテストに使用されたのは、エキスパートアドバイザーのデフォルト入力パラメータです。テスト中はストップロスとテイクプロフィットは使用されていません。 図1. チャート上の取引例 2015年のGBPUSD H4に関するテスト結果: 図2. テスト結果チャート

2017.08.10
MetaTrader 5用EAの使い方と取引の最適化
MetaTrader5
MetaTrader 5用EAの使い方と取引の最適化

アイデアの作者: ef91(関連ディスカッションの始まり #62)MQL5コードの作者: Vladimir Karputov。このEAは、テイクプロフィット(TP)またはストップロス(SL)がトリガーされた後、反対方向にポジションを開きます。取引リクエストを送信する前に、十分な資金があるかどうかを確認します。例えば、買いポジションを保有している場合、TPまたはSLがトリガーされると、新たに売りポジションが開かれます。その後、再度TPまたはSLがトリガーされると、新しい買いポジションが開かれます。取引のクローズは「OnTradeTransaction」で監視されます://+------------------------------------------------------------------+ //| TradeTransaction関数                                        | //+------------------------------------------------------------------+ void OnTradeTransaction(const MqlTradeTransaction &trans,                         const MqlTradeRequest &request,                         const MqlTradeResult &result)   { //--- 取引タイプを列挙値として取得    ENUM_TRADE_TRANSACTION_TYPE type=trans.type; //--- 取引が履歴に追加された結果かどうかを判定    if(type==TRADE_TRANSACTION_DEAL_ADD)      {       long     deal_entry        =0;       long     deal_type         =0;       string   deal_symbol       ="";       long     deal_magic        =0;       long     deal_time         =0;       if(HistoryDealSelect(trans.deal))         {          deal_entry=HistoryDealGetInteger(trans.deal,DEAL_ENTRY);          deal_type=HistoryDealGetInteger(trans.deal,DEAL_TYPE);          deal_symbol=HistoryDealGetString(trans.deal,DEAL_SYMBOL);          deal_magic=HistoryDealGetInteger(trans.deal,DEAL_MAGIC);          deal_time=HistoryDealGetInteger(trans.deal,DEAL_TIME);         }       else          return;       if(deal_symbol==m_symbol.Name() && deal_magic==m_magic)         {          if(deal_entry==DEAL_ENTRY_OUT)            {             if(deal_type==DEAL_TYPE_BUY || deal_type==DEAL_TYPE_SELL)               {                if(deal_type==DEAL_TYPE_BUY)                   m_close_pos_type=POSITION_TYPE_SELL;                else if(deal_type==DEAL_TYPE_SELL)                   m_close_pos_type=POSITION_TYPE_BUY;                else                   return;                m_is_trade=true;           }          }          else if(deal_entry==DEAL_ENTRY_IN)            {             m_is_trade=false;            }         }     } オーダー送信前にボリュームを確認(買いポジションを開く例として考えます)://+------------------------------------------------------------------+ //| 買いポジションをオープン                                                | //+------------------------------------------------------------------+ void OpenBuy(double sl,double tp)   {    sl=m_symbol.NormalizePrice(sl);    tp=m_symbol.NormalizePrice(tp); //--- オーダー送信前にボリュームをチェックして「資金不足」エラーを回避(CTrade)    double check_volume_lot=m_trade.CheckVolume(m_symbol.Name(),InpLots,m_symbol.Ask(),ORDER_TYPE_BUY);    if(check_volume_lot!=0.0)      {       if(check_volume_lot>=InpLots)         {          if(m_trade.Buy(InpLots,NULL,m_symbol.Ask(),sl,tp))            {             if(m_trade.ResultDeal()==0)               {                Print("Buy -> false. Result Retcode: ",m_trade.ResultRetcode(),                      ", 結果の説明: ",m_trade.ResultRetcodeDescription());               }             else               {                Print("Buy -> true. Result Retcode: ",m_trade.ResultRetcode(),                      ", 結果の説明: ",m_trade.ResultRetcodeDescription());               }            }          else            {             Print("Buy -> false. Result Retcode: ",m_trade.ResultRetcode(),                   ", 結果の説明: ",m_trade.ResultRetcodeDescription());            }         }       else         {          m_is_trade=false;         }      }    else      {       m_is_trade=false;      } //---   }

2017.08.10
Exp_Kolier_SuperTrend_X2 - MetaTrader 5用トレンドトレーディングシステム
MetaTrader5
Exp_Kolier_SuperTrend_X2 - MetaTrader 5用トレンドトレーディングシステム

皆さん、こんにちは!今日は、MetaTrader 5用のトレンドトレーディングシステム「Exp_Kolier_SuperTrend_X2」をご紹介します。このシステムは、2つのKolier_SuperTrendインジケーターの信号に基づいています。 最初のインジケーターは、ラインの色に基づいてスロートレンドの方向を決定します。次に、ラインの色が変化したときに取引を開始するタイミングを決定します。シグナルは、バーがクローズする際に以下の2つの条件が満たされた場合に形成されます: 速いトレンドと遅いトレンドのシグナルが一致すること。 速いトレンドの方向が変わったこと。 エキスパートアドバイザーの入力パラメーター //+-------------------------------------------------+ //| EAインジケーターの入力パラメーター | //+-------------------------------------------------+ input string Trade="トレード管理";    //+================ トレード管理 ================+ input double MM=0.1;              //取引における預金の割合 input MarginMode MMMode=LOT;      //ロット値の検出方法 input uint    StopLoss_=1000;     //ストップロス(ポイント) input uint    TakeProfit_=2000;   //テイクプロフィット(ポイント) input string MustTrade="トレードの許可";    //+=============== トレード許可 ===============+ input int    Deviation_=10;       //最大価格偏差(ポイント) input bool   BuyPosOpen=true;     //ロングポジションのエントリー許可 input bool   SellPosOpen=true;    //ショートポジションのエントリー許可 //+-------------------------------------------------+ //| フィルターインジケーターの入力パラメーター        | //+-------------------------------------------------+ input string Filter="スロートレンドパラメータ";    //+============== トレンドパラメータ ==============+ input ENUM_TIMEFRAMES TimeFrame=PERIOD_H6;  //トレンドのためのチャート期間 input Mode TrendMode=NewWay;                //表示形式 input uint ATR_Period=10; input double ATR_Multiplier=3.0; input uint SignalBar=1; //エントリーシグナルを受け取るバーインデックス input bool   BuyPosClose=true;     //トレンドによるロングポジションの終了許可 input bool   SellPosClose=true;    //トレンドによるショートポジションの終了許可 //+-------------------------------------------------+ //| エントリーインジケーターの入力パラメーター        | //+-------------------------------------------------+ input string Input="エントリーパラメータ";       //+=============== エントリーパラメータ ==============+ input ENUM_TIMEFRAMES TimeFrame_=PERIOD_M30;  //エントリー用のチャート期間 input Mode TrendMode_=NewWay;                 //表示形式 input uint ATR_Period_=10; input double ATR_Multiplier_=3.0; input uint SignalBar_=1;//エントリーシグナルを受け取るバーインデックス input bool   BuyPosClose_=false;     //シグナルによるロングポジションの終了許可 input bool   SellPosClose_=false;    //シグナルによるショートポジションの終了許可 入力コード内の文字列変数は、EAの入力ウィンドウの視覚的表示を向上させるために含まれています。 EA内のKolier_SuperTrend_HTFインジケーターは、ストラテジーテスターでのトレンドの視覚化を便利にするためのものであり、他の操作モードでは無効です。 生成されたエキスパートアドバイザーが適切に作動するように、「Kolier_SuperTrend.ex5」と「Kolier_SuperTrend_HTF.ex5」のコンパイル済みファイルを<terminal_data_folder>\MQL5\Indicatorsに配置してください。 TradeAlgorithms.mqhライブラリファイルは、ストップロスとテイクプロフィットを「ポジションオープンと同時に設定する」オプションを提供するブローカーとのエキスパートアドバイザーの使用を可能にします。ライブラリの他のバリエーションを以下のリンクからダウンロードできます:Trade Algorithms。 以下に示すテストでは、デフォルトのエキスパートアドバイザーの入力パラメーターが使用されました。テスト中はストップロスとテイクプロフィットは使用されていません。 図1. チャート上の取引の例 2015年のEURUSDに関するテスト結果、H6でのスロートレンド、M30での速いトレンドでのエントリー: 図2. テスト結果のチャート

2017.05.30
最初 前へ 25 26 27 28 29 30 31 32 33 34 35 次へ 最後