無料でロボットをダウンロードする方法を見る
Telegram上で私たちを見つけてください。
私たちのファンページに参加してください
興味深いスクリプト?
それではリンクにそれを投稿してください。-
他の人にそれを評価してもらいます
記事を気に入りましたか?MetaTrader 5ターミナルの中でそれを試してみてください。
エキスパート

2つの移動平均線をベースにしたエキスパートアドバイザ - MetaTrader 4のためのエキスパート

ビュー:
1107
評価:
(30)
パブリッシュ済み:
2015.12.21 09:50
アップデート済み:
2016.11.22 07:34
results.zip (109.07 KB)
settings.zip (2.76 KB)
このコードに基づいたロボットまたはインジケーターが必要なら、フリーランスでご注文ください フリーランスに移動

エキスパートアドバイザのアイディアは私のものです。エキスパートアドバイザのコードはSergey Diubakin氏が作成しました。

エキスパートアドバイザのこのバージョンは、マネージドアカウントでの取引に利用されました。人的要因のせいで(つまり私のせいで)、純利益は20%です。成し遂げることができた最大利益はデポジットからの84%です。

実際の取引期間:2015年2月23日から2015年7月23日まで

私の観測によるところでは、このエキスパートアドバイザを使用した取引には大きなデポジットが必要です。(最低でも15000から20000)

取引にはインディケータMoving Averageの指針を利用します。もし短期移動平均線が中期移動平均線よりも上にあり、2つの線の間の距離が予め決めたものより大きい場合、買いの注文が発生します。

売りの注文を出す為には、インディケータの反対の指針を使用します。注文の終了は、移動平均インディケータの指針によって起こります。

同様にこのエキスパートアドバイザには、追加のプラグインがあります。それは、中期と短期の移動平均線の間の距離、Take Profit、Stop Loss、Trailing Stop、注文間の距離(上部と下部)、Take Profit、Trade time、Turn(『転換』)の平均化の方法、前のロットが損失でクローズした場合の一番初めの主要なロットの増幅です。


エキスパートアドバイザの動作のアルゴリズム:

  1. エキスパートアドバイザは、以前に開かれた注文があるかどうかを確かめます。
  2. もし開いている注文がない場合、エキスパートアドバイザはチャートを分析し、もし設定で定義された全ての条件が揃っている場合、第一主要注文を開きます。
  3. 第一主要注文が開かれた後、エキスパートアドバイザはテイクプロフィットとストップロスのレベルを設定します。(もしこれらのモジュールが含まれている場合)
  4. もし第一主要注文が損失とともに閉じる場合、次の注文はより大きいサイズで開かれる可能性があります。
  5. もし第一主要注文にステップアップとステップダウンのモジュールが含まれていて、価格が設定値に達した場合、これらのモジュールによって追加の注文が出されます。ステップアップとステップダウンのモジュールによる追加の注文は、エキスパートアドバイザが以前に第一主要注文を開いた、または閉じていない追加の注文があると確認した場合のみに設定することができます。
  6. このエキスパートアドバイザの2つの動作モード:
    • a)第1の動作モードは、もしFast MAがSlow MAよりも高い場合、エキスパートアドバイザによって買い注文が出され、トレンドが変化した際(Fast MAがSlow MAよりも低い)には、全ての開いている買いの注文が閉じ、売りの注文が開かれます。
    • b)第2の動作モードは、もしエキスパートアドバイザによって買いの注文が開かれており、トレンドが変化する(Fast MAがSlow MAよりも低い)場合には、注文は開かれたまま残ります。エキスパートアドバイザは、Fast MAがSlow MAよりも低くなりエキスパートアドバイザの全ての買いの注文が閉じられる(Take ProfitやStop Lossに達する、または手動で閉じられる)場合にのみ、売りの注文を出すことができます。
  7. このエキスパートアドバイザにはTrade timeモジュールがあり、それが有効になっている時、エキスパートアドバイザは、このモジュールで設定される期間にのみ第一主要注文を出すことができます。このモジュールは、Step UpやStep Down、Turn(『転換』)モジュールによる追加注文には展開されません。つまり、もしあなたにエキスパートアドバイザによって以前に開かれた注文があり、Step UpやStep DownまたはTurn(『転換』)モジュールが有効になっている場合、このモジュールによって時間に関係なく追加注文を出します。


エキスパートアドバイザの設定:

  1. 動作モード:

    • 1 —トレンドが変化する時、全ての注文が閉じられ、反対の注文が開かれます。
    • 2 —トレンドが変化する時にも、開いている注文は閉じられません。(エキスパートアドバイザはTake ProfitやStop Lossに達する、または手動で閉じられるのを待ちます)
  2. Fast MA —移動平均(Moving Average)インディケータの設定:期間、移動、移動平均方法MetaTrader 4ターミナルに含まれている移動平均が使用されます。

  3. Fast MA —移動平均(Moving Average)インディケータの設定:期間、移動、移動平均方法MetaTrader 4ターミナルに含まれている移動平均が使用されます。

  4. 初期ロット

  5. 4.1.初期ロット

    • LotConst_or_notは、ユーザがどのロットから取引を開始するか、またはデポジットの変化に応じて初回ロットを計算しなおすかを選択することができます。
      true —初回ロットは、固定で且つ下記に指定されたLots値と等しいものになります。
      false —初回ロットは、デポジットの変化と共に動的に変化し、デポジットのサイズとRiskPercentのパラメータに依存します。Lots =AccountBalance() * (RiskPercent / 100.0) / 10000.0
    • Lotsは、取引の為に初期ロットを設定します。
    • RiskPercentは、デポジットに応じて初期ロットを設定します。

    4.2.ロットの増幅

    • FirstLotMultiplicatorは、もし以前の第一主要注文が損失を伴って閉じた場合(Stop Lossや手動で、または単に損失によって閉じた)を含め、それぞれの以前の第一主要注文の増幅の整除を行うパラメータです。
    • First_LotSizeは、もし第一主要注文がこの列で指定された値まで達した場合、エキスパートアドバイザは、エキスパートアドバイザ設定の5番によってではなく次の列(First_LotSize_TakeProfit)で指定された水準でTake Profitを設定します。
    • First_LotSize_TakeProfitは、もし第一主要注文のTake Profitの水準が、First_LotSizeの列で指定されたものに達した場合を含む、第一主要注文の『新しい』Take Profitの水準です。
    • First_MaxLotSizeは、エキスパートアドバイザがその値まで増幅させる第一主要注文の最大値です。もし第一主要注文で出された値が、この列で指定された値を上回る場合、エキスパートアドバイザは、エキスパートアドバイザ設定の項目3番に相応した第一主要注文を出します。
  6. Fast MAとSlow MAの間の距離の設定

    • Distanceは、注文を開く為に必要なFast MAとSlow MAの間の距離が、エキスパートアドバイザが固定されたチャートのポイントに達します。
      true —Distanceモジュールは有効です。(オン)
      false —Distanceモジュールは無効です。(オフ)
  7. ポイントでの利益 ― TP

    • TakeProfitは、注文または注文のグループが閉じる時に希望する利益の値です。
      true —TakeProfitモジュールは有効です。(オン)
      false —TakeProfitモジュールは無効です。(オフ)
  8. 平均化の手段—Varyantは、TakeProfitの水準を平均化するものです。(1または2の間で選択されます)

    • バージョン 1 平均化は以下の方程式で行われます。 (始値1+始値2+始値3+始値N)÷N+エキスパートアドバイザ設定で指定されたTake Profitの水準
    • バージョン 2 レベルの平均化は以下のように行われます。 エキスパートアドバイザは、全てのポジション(全てのswapやTake Profitレベルの平均化の時にエキスパートアドバイザによって開かれた注文の手数料を含む)から『損失のない水準』を明確にし、この価格にエキスパートアドバイザ設定で指定されたTake Profitの水準を加えます。
  9. ポイントでのストップ — SL

    • StopLossは、もし価格が反対の方向(開いているオーダー)へ動くときに、得られるポイントでの利益の値です。
      true —StopLossモジュールは有効です。(オン)
      false —StopLossモジュールは無効です。(オフ)
  10. 注文間の距離(Step Up) は、『トレンド』の動きに合わせて設定される開いている注文どうしの距離です。

    true —Step Upモジュールは有効です。(オン)
    false —Step Upモジュールは無効です。(オフ)

    9.1. Trailing stopは、移動するStop Lossのことです。

    true —Trailing stopモジュールは有効です。(オン)
    false —Trailing stopモジュールは無効です。(オフ)
  11. 注文間の距離(Step Down)は、『トレンド』に反して設定される開いている注文同士の間の距離です。

    true —Step Downモジュールは有効です。(オン)
    false —Step Downモジュールは無効です。(オフ)

  12. エキスパートアドバイザの注文インディケータ — Magic (Magic Number)は、1つのターミナルで取引を行っている時に、ごちゃごちゃになってしまわないようにエキスパートアドバイザを補助するパラメータです。

  13. ロゴとデータの出力 — ShowTableOnTestingは、表(今日、昨日の利益など)のオン・オフをすることができるパラメータです。trueはオン、falseはオフです。

  14. Time frameは、チャートのどの時間軸の取引にエキスパートアドバイザを使用するかを設定することができるプログラムコードです。

    • Currentは、ターミナルに表示されたチャートの時間軸です。
    • M1, M5, M15, M30, H1, H4, D1, W1, MN1は、固定の時間軸です。
  15. Trade timeは、特定の期間における第一主要注文の開始モジュールです。

    true —Trade timeモジュールは有効です。(オン)
    false —Trade timeモジュールは無効です。(オフ)

  16. Turn (『転換』)主要注文のStop Lossの水準に沿って反対の方向にリミットオーダーを設定します。

    true —Turnモジュールは有効です。(オン)
    false —Turnモジュールは無効です。(オフ)

    • Turnは、距離で、この後に逆指値注文が設定されます。
    • LotMultiplicatorは、もし以前の注文が損失で終わった場合(Stop Lossや手動、または単に損失によって終了)を含み、Turn(『転換』)モジュールによって設定された注文の増幅の整除を行うパラメータです。
    • Turn_TakeProfitは、Turn(『転換』)モジュールによって設定された注文の為のTake Profitの水準です。
    • Turn_LotSizeは、もしTurn(『転換』)モジュールによって設定された注文が、この列で指定された値を上回る場合、この注文には、Turn_TakeProfitの列で指定されたものではなく、次の列でTurn(『転換』)モジュールで指定された新しいTake Profitの水準が使われます。
    • Turn_LotSize_TakeProfitは、設定されている注文がTurn_LotSizeの列で指定されたサイズを上回る場合の、Turn(『転換』)モジュールの注文の為の新しいTake Profitの水準です。
    • Turn_MaxLotSizeは、Turn(『転換』)注文モジュールで設定された最大のサイズです。もし設定される注文が指定された値を上回る場合、エキスパートアドバイザは注文を設定しません。


取引結果:

取引結果

エキスパートアドバイザのこのバージョンは、マネージドアカウントでの取引に利用されました。実際の取引期間:2015年2月23日から2015年7月23日まで

成し遂げることができた最大利益はデポジットからの84%です。しかしながら、私のせいで純利益は20%です。私がエキスパートアドバイザの取引を邪魔してしまったせいです。

私が行ったエキスパートアドバイザのテストパスでは、月あたり5%、10%、15%、ドローダウン時では20%以上のデポジットからの純利益の収率を示しました。

P.S. 用いたセットは、取引を行ったアカウントでのみ動作しました。それぞれの銀行やブローカーとアカウント(デモまたは実際)の為に自分独自のエキスパートアドバイザの設定が必要です。

最適化をあまり信じすぎないようにしてください。最適化はいつも助けになるとは限りませんし、急激な変化があった時に即座に注文を出すことができないためです。

MetaQuotes Ltdによってロシア語から翻訳されました。
元のコード: https://www.mql5.com/ru/code/13617

Swapping Swapping

インディケータは、開いているチャートがある通貨ペアの履歴をダウンロードします。時間軸変更の際に、更新を待つ必要がありません。

TEMA平滑化版 S/Rオシレータ TEMA平滑化版 S/Rオシレータ

Close値にTEMAを使用したS/Rオシレータ

Forex Fraus (for M1) Forex Fraus (for M1)

インディケータWilliams Percent Rangeをベースに作られたエキスパートアドバイザです。買われ過ぎのゾーンで売りを行い、売られ過ぎのゾーンでは買いを行います。これにはトレールとタイマーがついています。

PinBar PinBar

インディケータは、指定されたパラメータに従い、ピンバーをチャート上に記入します。