//--- create handle of the indicator TopqwResetLastError();
handle_Topqw=iCustom(Symbol(),Period(),"Topqw",PRICE_CLOSE);
//--- if the handle is not created if(handle_Topqw==INVALID_HANDLE)
{
//--- tell about the failure and output the error code PrintFormat("Failed to create handle of the Topqw indicator for the symbol %s/%s, error code %d",
Symbol(),
EnumToString(Period()),
GetLastError());
//--- the indicator is stopped early return(INIT_FAILED);
}
MA_handle=iCustom(Symbol(),Period(),"TopFidCounselor",per,bar); per,bar - же массивы, а данные должны быть imput,
в индикаторе записываю в массивы
SetIndexBuffer(0,per,INDICATOR_CALCULATIONS);
SetIndexBuffer(1,bar,INDICATOR_CALCULATIONS);
если я сделаю такую запись
intOnCalculate(
...
{
//--------------------------------------------------------------
for ( int i = 0; i < rates_total; i ++ ) per[i] = price[i]; -
//--------------------------------------------------------------
ТО СОВЕТНИК РАБОТАЕТ БЕЗ ОШИБКИ
а если такую
//----------------------------------------------------------------
for(int b=1; b<200; b++) //отбор по х-
{-
for(int p=1; p<200; p++) // отбор по у-
{-
if(arrayZ[6][p][b]>0||arrayZ[6][p][b]<0)-
{-
per[b]=p;-
bar[b]=b;-
}-
}-
}-
//----------------------------------------------------------------
ТО ОШИБКА код 4002
非常に単純な質問で申し訳ないのですが、オープンポジションを クローズするにはどうすればいいのでしょうか? mql4にはOrderClose()関数がありますが、どのようにすればいいのでしょうか?
mql5では、反対側のポジションを開く必要があります。 それは、ターミナルの履歴のタブで明確に見ることができます。最も簡単な方法は、標準ライブラリの CTrade クラスを使用することです。
皆さん、どこが間違いなのか教えてください。
EAで呼び出すインジケータを準備しています。
インジケータからバッファを送信したい。
その結果が、バーに付けられた int 値である。
タスクは、インジケータからExpert Advisorに2次元配列を渡すことですが、その方法がわかりません。
だから、EAで呼び出す
皆さん、どこが間違いなのか教えてください。
EAで呼び出すインジケータを準備しています。
インジケータからバッファを送信したい。
結果は、バーにバインドされているint値です。
タスクは、インジケータからExpert Advisorに2次元配列を渡すことですが、その方法がわかりません。
EAで呼び出す
1.INDICATORでは、インデックス "0 "のデフォルトインディケーターバッファは、チャート上の一番左のバーに対応することを忘れないでください。
2.Expert Advisor には「SetIndexBuffer」コマンドがありません。
3. iCustomはカスタムインジケーターを 作成しており、バッファリクエストではありません(したがって、",0,1 "ではなく、すべて明示的に記述する必要があります)。あなたの場合、このフォームを使用することができます
4.CopyBufferは正しく書き込まれているようです。
5.2 次元配列は渡せない - 配列指示バッファを 2 つ作成する。
1.INDICATORでは、デフォルトでインデックス "0 "のインジケーターバッファは、チャート上の一番左のバーに対応することを忘れないでください。
2.EAには "SetIndexBuffer "コマンドはありません。
3. iCustomはカスタムインジケーターを 作成しており、バッファリクエストではありません(したがって、すべて「,0,1」ではなく、明示的に記述する必要があります)。あなたの場合、このフォームを使用することができます
4.CopyBufferは正しく書き込まれているようです。
5.2次元の配列を渡すことはできません。配列指示のバッファを2つ作ってください。
IndicatorCreate() に目を通しましたが、方法を教えていただけませんか?そうしないと、理解するのに何週間もかかり、思考ブロックが完成するまでに残り少なくなって しまいました。近々、タイガでミツバチの採餌をしながら夏を過ごす予定なので、幻想を抱かないように出発前に確認したいです。修正ありがとうございます、しかし、私は理解していない、私は明示的に配列の転送を設定した場合、それはどのように形式化されていますか? 私は2つの配列を抽出する必要があることをどこに指定するのでしょうか?
INDICATOR_CALCULATIONSの インジケーターで使用しているものは正しいですか?
4002エラーは解消されました。
のみで、抽出する配列をどこに書けばいいのかが不明です。
4002エラーは解消されました。
のみで、抽出する配列をどこに書けばいいのかが不明です。
配列perは EAで、コピーを行うプロシージャの中で宣言します。動的な配列([]と宣言され、次元を持たない)でなければなりません。