私たちのファンページに参加してください
Ilan 1.6 Dynamic HT - MetaTrader 5のためのエキスパート
- 発行者:
- Vasiliy Sokolov
- ビュー:
- 1846
- 評価:
- パブリッシュ済み:
- 2016.11.02 10:01
- アップデート済み:
- 2016.11.22 07:34
- このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動
実際の著者:
不明
Ilan Dynamic 1.6 HT の基礎となるアルゴリズムは単純です。これは、各取引量の徐々な増加に伴った、価格の平均に基づいています。
例として、1番目のロングポジションが開いた後で価格が下降してポイントで一定の範囲を超えた場合、さらに大きな数量でロングポジションが開かれます。
よって、Ilan Dynamicの平均参入価格は常に現在の市場価格に近いものとなります。したがって、わずかな価格のロールバックを待ち、TakeProfitを使用して利益を持ってすべてのポジションを決済することだけが必要です。 Ilan 1.6 Dynamicの参入の全体像はこの MetaTrader 5 ストラテジーテスタのスクリーンショットのように見えます。
ご覧のように、価格は3つの買いポジションに反していましたが、小さなロールバックの後に利益を持って決済されています。スクリーンショットはまた決済指値(水平方向の緑線)と決済逆指値(水平方向の赤線)を示します。
エキスパートアドバイザーは、動的に最後の数本のバーの範囲内の高値と安値との価格帯に応じて平均化のために価格を計算します。名前の「Dynamic」はこの事実を指します。
決済指値に加えて、Ilan 1.6 Dynamicでは古典的な決済逆指値、トレイリングストップ、時刻によるエグジット、CCI指標によるエグジット、すべての株式取引レベルによるエグジットが使用できます。
テスト結果
Ilan 1.6 Dynamic の検証結果は、選択された時間枠、検証期間、製品、ブローカーと初期条件に応じて大きく変化することがあります。
このため、エキスパートはパラメータとそれを起動することができる市場を慎重に選択する必要があります。それにもかかわらず、デフォルト設定が使用されると、履歴が短期間でもある程度一貫性のある結果を得ることが可能です。下記はこのエキスパートアドバイザーによって生成された典型的な株式とバランスのチャートです。
警告: Ilan 1.6 Dynamicの利益/損失や資本の浮動はバランスからは大きく異なる可能性があり、これはチャートに反映されます。価格がロールバックせずに変動すると、その株は下降し最終的にこの取引戦略は、マージンコールにつながり、預金が破滅することもあります。Ilan 1.6 Dynamic はフラットのときのみに使用してください。ロット指数は慎重にご使用ください。
入力とパラメータ
Ilan 1.6 Dynamic はデフォルトで最適化されています。このモードではほとんどのパラメータは使われていません。しかし、オプションはカスタマイズすることができます。
お好みに合わせてパラメータを設定するには、以下の表をご参照ください。
パラメータ名 | 値 デフォルト | 説明 |
---|---|---|
基本パラメータ | ||
LotExponent | 1.4 |
次のポジションを開くときのロット乗数。例として LotExponent = 1.4 で Lots = 0.1 だとすると、1番目のポジションは0.1ロットで開かれ、2番目の平均化されるポジションは 0.2 (0.1 * 1.4^2)ロット、3番目は0.3 (0.1 * 1.4^3)ロット、7番目は1.0 (0.1 * 1.4^7)ロットで開きます。このパラメータの変更には注意が必要です。その値は1.0(過度に保守的な取り引き)から2.0(非常に積極的な取り引き)の範囲を持ちます。 |
MaxTrades | 10 | 一方向に開くことができるポジションの数。限界が達した場合、新しいポジションは開かれず、古いポジションは適切な終了条件(設定に応じて)によって決済されます。 |
DynamicPips | true | 動的価格帯を使用している場合はtrue |
DefaultPips | 120 | ピップ単位での価格チャンネルのデフォルトレベル |
Glubina | 24 | Ilan 1.6 Dynamic は最後の数バーの高値と安値の間の価格帯を計算します。このパラメータはこのような計算に使うバーの数を指定します。 |
DEL | 3 | この比率は、次の売買レベルの定義に価格帯のどの部分を使うかを示します。 |
Lots | 0.1 | 1番目の取り引きのロットサイズ |
lotdecimal | 1 | ロット計算の小数点以下の桁数。0 - 通常のロット(1.0)、1 - ミニロット(0.1)、2 - マイクロロット(0.01) |
TakeProfit | 100 | すべてのポジションが決済されるときの、ポイント単位での現在の価格からの決済指値レベル |
slippage | 30 | ポイント単位での最大許容スリッページレベル |
MagicNumber | 2222 | エキスパートアドバイザーのマジックナンバー |
市場参入シグナルを定義するパラメータ | ||
RsiPeriod | 14 | RSI指標期間 |
RsiMinimum | 30.0 | RSIが現在のレベルを下回っている場合は買いは行われません。 |
RsiMaximum | 70.0 | RSIが現在のレベルを上回っている場合は売りは行われません。 |
古典的な決済逆指値レベルの使用と構成 | ||
UseStopLoss | false | 決済逆指値はデフォルトでは使用されませんが、この変数値をtrueに設定することで有効にできます。 |
StopLoss | 500.0 | ポイント単位での決済逆指値(デフォルト値は5桁の価格表示) |
エクイティストップの使用と設定 | ||
UseEquityStop | false | すべてのポジションの損失の合計が利益の合計の一定割合に達した場合にポジションを決済するにはtrue |
EquityPercent | 1.0 | 現在のアカウントの株式からのすべてのポジションの利益の割合。この割合が超えられると、エクイティストップによるエグジットが全てのポジションでアクティブになります。 |
TotalEquityRisk | 20.0 | EAがすべての既存のポジションからエグジットする時の、最大に達した株に対する損失の割合 |
トレーリングストップの使用と設定 | ||
UseTrailingStop | false | トレーリングストップはデフォルトでは使用されませんが、この変数をtrueに設定することで有効にできます。 |
TrailStart | 100.0 | ポイント単位でのの全てのポジションの加重平均利益のレベル。このレベルを超えると、トレーリングストップが起動されます。 |
TrailStop | 100.0 | 現在の価格とトレールされる決済逆指値との間のポイント単位でのレベル |
CCIに基づいたストップの使用と設定 | ||
UseCCIStop | false | CCIに基づいたストップはデフォルトでは使用されませんが、この変数をtrueに設定することで有効にできます。 |
CCIPeriod | 55 | CCIの期間 |
CCILevel | 500 | CCIの値 > CCILevel(デフォルトでは500)の場合はすべてのショートポジションが決済されます。CCIの値が -500(デフォルト)未満の場合はすべてのロングポジションが決済されます。 |
時刻に基づいたエグジットの使用と設定 | ||
UseCloseByTime | false | 時刻に基づいたエグジットはデフォルトでは使用されませんが、この変数をtrueに設定することで有効にすることができます。 |
MaxTradeOpenHours | 48 | 最初のポジションが開かれてからすべてのポジションが決済されるまでの時間数。取引時間のみが考慮されます。週末と祝日は抜かされます。 |
検証モード最適の製品と時間枠。
Ilan 1.6 Dynamic は主に短期価格変動から利益を得るために作成されています。最適な時間枠は15分足チャート(M15)です。デフォルト設定は5桁の価格表示で使用する必要があります。EAは次のモードでの検証をサポートします。The EA supports testing in the following modes:
- 全ティック:トレーリングストップが使用され、正確な決済指値、CCIストップまたはエクイティストップによる正確なエグジットが望まれる場合は、EAはこのモードで検証されるべきです。
- 1 分足 OHLC:このモードは、検証速度とシグナル精度を兼ね備えた妥協案です。<
- 始値のみ:これが一番速いモードです。仮想化のため、このモードでの決済指値はバーが開かれる瞬間のみにトリガされます。これはCCIストップとエクイティストップでも同じです。しかし、多くの場合、このような人工的な概算は「全てティック」での検証よりも良い結果をもたらします。
Ilan 1.6 Dynamic アルゴリズムの検証は普通のモードとランダム遅延モードの両方で成功しています。
推奨される銘柄
Ilan 1.6 Dynamicは長いフラット(トレンドなし)期間を持つすべての通貨ペアで使用することをお勧めします。これに適しているのは、EURUSD、USDJPY、GBPUSD、USDCHF、EURCHF 及び他の主要なペアです。EAの設定は5桁の価格表示で最適化されています。EAを4桁通貨ペアで使用する場合は、最初に以下のパラメータを10分の1に低減してください。
- DefaultPips - 12
- TakeProfit - 10
- slippage - 3
- StopLoss - 50
エキスパートをコンパイルして動作させる方法(重要)
Ilan 1.6 Dynamic は注文グリッドと個々ポジション管理を積極的に使います。
このために、MetaTrader 5環境でのMetaTrader 4 と似た作業を可能にするために、特別な 仮想化を必要とします。このために HedgeTerminalAPI ライブラリ関数が呼び出され、作業はライブラリによって提供された環境で行われます。ライブラリ使用法はHedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う-パート1をご参照ください。EAの取引ロジックを修正する場合には、EAのコードを理解するために以下の記事をお読みください。
始める前に、お手持ちのコンピュータにHedgeTerminalAPI ライブラリをダウンロードします。その後、お使いのコンピュータにエキスパートアドバイザーが使用するソフトウェアモジュール(添付)をコピーします。モジュールの詳細はこちらです。
- ilan_1.6_dynamic_ht.mq5 - 基本モジュール。EAの取引ロジックを含みます。名前の「HT」は、エキスパートアドバイザーの操作のためにHedgeTerminalAPIライブラリが必要であることを示しています。これがterminal_data_folde\MQL5\Experts\フォルダに格納される唯一のファイルです。,他のモジュールはすべてterminal_data_folder\MQL5\Include\に保存されます。
- prototypes.mqh - ライブラリとの対話のために必要なプロトタイプファイル
- drawhedgeposition.mqh - traces (draws) EA's trades the way similar to MetaTrader 4 と同様の方法でEAの取り引きをトレース(描画)します(最初のスクリーンショットを参照)。双方向のポジションは MetaTrader 5 で順番に開かれるのとは違い、互いに平行に開かれます。
- environment.mqh - エキスパートアドバイザー取引環境モジュール。EAのために必要なすべての取引情報を収集します。EAが開いたポジションの数とそれらの利益/損失をはじめとする多くの有用な詳細情報が含まれます。
- testertable.mqh - ストラテジーテスタにおけるエキスパートアドバイザーのすべてのポジションの単純な一覧表を示します。EAのポジションをリアルタイムで視覚的に表に表示させたい場合は HedgeTerminal パネルを使用します。
- indicators.mqh - 指標モジュール。指標のデータにアクセスするためのシンプルなインターフェイスを提供します。
- tradestate.mqh - エキスパートアドバイザー取引状態モジュール。MetaTrader 5 では、実行された注文が注文履歴に追加されて分析可能になるには時間がかかる場合があります。このモジュールは、注文が履歴に追加されるのを正しく待つのに役立ちます。
エキスパートアドバイザーの動作を視覚化して手動操作でその動作を制御する方法
Ilan 1.6 Dynamic は、一度に複数の一方向のポジションを管理します。MetaTrader 5 ではこれらのポジションはすべて1つのネットポジションとして表示されます。EAポジションの管理に簡単にアクセスし、各時点でその取引の状態を知るためにはHedgeTerminalデモパネルのインストールも必要です。起動後は、エキスパートアドバイザーのポジションは下記のように表示されます。
詳細についてはHedgeTerminalAPIを利用して MetaTrader 5 で双方向トレードとポジションヘッジを行う-パート1稿をお読みください。
MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/12220
この指標はiFractals指標データに基づいてトレンドの強気及び弱気の線を、最も近い極値から最後の壊れたフラクタルまで描画します。
証拠金計算MetaТrader 5 でポジションを開くために必要な証拠金を計算するためのライブラリ。
TrendSignal指標の最新版。再描画はされずテンプレートともうまく作動します。
WebRequest()を使った自動投稿WebRequest()関数を使用してMQL5.comのウェブサイト上で画像を含むメッセージを投稿する例。これは、ログイン名とパスワードを使用して承認し、テキストメッセージに画像を挿入する方法の例です。