マルチカレンシー - マルチタイムアドバイザー - ページ 4

 
Tango_X:

というわけにはいきません。例えば、スロープの線が途切れている場合です。- ブレイクスルーがある=シグナルがある

まず最初に、すべてのループを取り除く必要があります。それはOnChartEventの ヘルプに書かれています。

 
Fast528:

まず第一に、すべてのサイクルを取り除く必要があります。それはOnChartEventのヘルプに書かれています。

if(id>=CHARTEVENT_CUSTOM)
     {
      //--- Если было событие "тик"
      if(lparam==0x00200000)
        {
         datetime t[1];
         //--- Получаем номер символа в массиве
         int s=GetNumberSymbol(sparam);
         // --- перебираем все периоды по нашему символу   
         for(int p=0;p<NUMBER_OF_PERIODS; p++)
           {
            CopyTime(Symbols[s],Periods[p],0,1,t);
            //--- Получим значения индикатора
            if(CopyBuffer(signal_indicator_handles[s][p],0,0,1,Indicator[s][p].sell)<1 || CopyBuffer(signal_indicator_handles[s][p],1,0,1,Indicator[s][p].buy)<1)
              {
               Print("Не удалось скопировать значения ");
               return;
              }
            if(Indicator[s][p].buy[0]!=0 && Symbols[s]=="USDCHF.m" && Periods[p]==PERIOD_M1) Print(Symbols[s]," ",TimeframeToString(Periods[p])," ",Indicator[s][p].buy[0]," ",t[0]);
            if(Indicator[s][p].sell[0]!=0 && Symbols[s]=="USDCHF.m" && Periods[p]==PERIOD_M1) Print(Symbols[s]," ",TimeframeToString(Periods[p])," ",Indicator[s][p].sell[0]," ",t[0]);
           }
        }
     }

専用ループのことですか? もしそうなら、その通りです...毎ティック、すべての期間を調べてシグナルを探します。

 
Tango_X:

専用ループのことですか? もしそうなら、その通りです...毎ティック、すべての期間を調べてシグナルを探します。

このOnChartEventは暗い森で、私は悪い夢のようにそれを忘れてしまった、アナトリー・カザルスキー(648の著者)もそれと戦った)、強いチャートの動きの中に長い話題、マルチシンボル+マルチテンポがある、私はそれが立つと思う、OnTickとは違ってこれはキューを節約するものです。

 
Tango_X:

私は、記号とピリオドを1つずつ、それだけでやりました。

トレーディング、自動売買システム、ストラテジーテスターに関するフォーラム

マルチカレンシー - マルチタイムエキスパートアドバイザー

ウラジミール・カルプトフ さん 2018.09.12 13:45

シンプルに始める:現在のタイムフレームと与えられた、現在のシンボルと与えられた。つまり、2つのタイムフレームと2つのシンボル、合計4つのインジケータです。どんな指標でもいい。


さらに私は、OnChartEventが ないことを追加しました。つまり、Expert Advisorの1つのファイルに、可能な限りコンパクトにまとめられているのです。最小限のコードです。

 
Vladimir Karputov:

plus追加:OnChartEventが ない。つまり、1つのEAファイルで可能な限りコンパクトに。最低限のコード。

ウラジミール、私はここで何も理解できないのですが、説明してもらえますか?

 
Tango_X:

ウラジミール、私はここで何も理解できないのですが、説明してもらえますか?

ここでは、EURUSD, H1に取り組んでいます。2つ目のシンボルはUSDJPY、2つ目のタイムフレームはH4。

MA EURUSD H1、MA EURUSD H4、MA USDJPY H1、MA USDJPY H4の4つのハンドル(Moving Averageの例)を作成します。

OnTick()では、4つの指標を照会しています。

 
Vladimir Karputov:

与えられた:EURUSD、H1での作業。2つ目のシンボルUSDJPY、2つ目のタイムフレームH4。

4つのハンドル(移動平均の例)を作成:MA EURUSD H1, MA EURUSD H4, MA USDJPY H1, MA USDJPY H4.

OnTick()では、4つの指標を照会しています。

このアルゴリズムは、複数の通貨ペアを分析し、EAを適用するチャートのティックイベントにのみBUTします。例えば、EURUSDにEAを投げてティックを待つ・・・と同時に、USDJPYは すでに5ティックを経過していますが、ここはどうなんでしょう?これは根本的に間違っている!

 
Tango_X:

このようなアルゴリズムでは、複数の通貨ペアを分析しますが、EAが接続されるチャートのティックのイベントでのみ分析されます。例えば、EURUSDにEAを投げてティックを待つ...と同時にUSDJPYはすでに5ティックを通過している--なんて。***

はい、その通りです。実際、イベントやエージェントなどがない、非常にシンプルなバリアントです。


まずはそのようなスキームを導入する必要があります。

 
Vladimir Karputov:

はい、その通りです。イベントやエージェントなどがない、実はとてもシンプルなオプションなんです。


まずはそのようなスキームを導入する必要があります。

まあ、簡単なことです!そのようなアルゴリズムは必要ないし、それを実装する方法も知っているのですが、状況が違うのです...。だから、助けを求めているんです。あなたが私に提供するものは、この場合、原始的で、簡単で、役に立たないものです)。

 
Tango_X:

まあ、簡単なことなんですけどね。このアルゴリズムは私に合わないし、実装の仕方もわかっているのですが、状況が違うので......。そのため、助けを求めているのです。あなたが私に提供するものは、この場合、原始的で簡単で役に立たない)

ああ、そうなんですね :)

そして、丁重にお別れをする。