もちろん、価格はNormalizeDouble(Ask,Digits) と NormalizeDouble(Bid,Digits) で正規化されています。注文の送信については、ここにある Igor Kim の関数も試してみました - この関数が処理しないので同じエラーが発生し、ただ5回注文を送信しようとして、それだけになります。注文を送信するすべてのコマンドでエラーが発生するわけではなく、ほとんどの注文はまだ開いています。この問題は、EAが1つのシンボルの異なるタイムフレームで複数の注文を同時に出したいときにあるケースでエラーが発生し、1つは普通に出されて、残りはこのエラーで成功しないので、トレードフローと関係があるような気がしているのですが、どうでしょうか?
もちろん、価格はNormalizeDouble(Ask,Digits) と NormalizeDouble(Bid,Digits) で正規化されています。注文の送信については、ここにある Igor Kim の関数も試してみました - この関数が処理しないので同じエラーが発生し、ただ5回注文を送信しようとして、それだけになります。注文を送信するすべてのコマンドでエラーが発生するわけではなく、ほとんどの注文はまだ開いています。この問題は、EAが1つのシンボルの異なるタイムフレームで複数の注文を同時に送信しようとするとエラーが発生するケースがあるのですが、通常1つの注文は送信されますが、他の注文は失敗するので、トレードフローと関係があるような気がしています。
//-------------------------------------------------------------------+externint TotalOrders = 1;
//-------------------------------------------------------------------+// Global variablesint Cnt = 0; // counter variable, used in for() loops
// only perform analysis and open new order if we have not reached our TotalOpenOrders maxif(TotalOpenOrders() < TotalOrders)
{
//+------------------------------------------------------------------+//|-----------------------// Orders Count //-----------------------|//+------------------------------------------------------------------+// This function returns the total amount of orders the expert advisor has open int TotalOpenOrders()
{
Cnt=OrdersTotal();
int TotalOpenOrders = 0;
if(Cnt==0)
{
return(0);
}
else
{
for(;Cnt>=0;Cnt--)
{
RefreshRates();
OrderSelect(Cnt,SELECT_BY_POS);
if(OrderMagicNumber()==Magic)
{
TotalOpenOrders++;
}
}
}
return(TotalOpenOrders);
}
こんにちは。
ExTrendv2インジケータ(添付)のUp_LineとDown_Lineの値をExpert Advisorに抽出する方法を教えてください。
以下の方法で試しています。
For Up_Line iCustom(NULL, 0, "ExTrendv2", 0, 0,1)
for Down_Line iCustom(NULL, 0, "ExTrendv2", 0, 1,1)
は失敗しました。
このようなインジケータを搭載したEAは、端末がハングアップしないのでしょうか?
テスターではハングアップしないようです。
ただ、私はまだ値が出せないんです、意味がわからない。
Print("Trade thread is busy. "は、トレードスレッドがビジー状態です。チェックを繰り返す "+DoubleToStr((Interval/1000),0)+" sec");
Sleep(Interval);}.RefreshRates(); 誰かこのネタが何なのか、どう対処すればいいのか知っている人はいませんか?
テスターではハングアップしないようです。
ただ、私はまだ値が出せないんです、意味がわからない。
このように、パラメータがない状態で試してみてください。
インジケーターは1ティック ごとにすべてを再計算していますが。
Expert Advisorを1つのシンボルと4つのタイムフレームで同時にテストしようとしているのですが、小さな問題があります。エラー129 - 始値と終値の両方で価格が間違っています。チェックを繰り返す "+DoubleToStr((Interval/1000),0)+" sec"); Sleep(Interval);}.RefreshRates(); 誰かこのネタが何なのか、どう対処すればいいのか知っている人はいませんか?
サーバーにリクエストを送る前に価格をDigitsに正規化する。
この方法で試してみてください、パラメータはありません
インジケータは1ティックごとに完全な再計算を行いますが。
サーバーにリクエストを送信する前に、価格をDigitsに正規化する。
もちろん、価格はNormalizeDouble(Ask,Digits) と NormalizeDouble(Bid,Digits) で正規化されています。注文の送信については、ここにある Igor Kim の関数も試してみました - この関数が処理しないので同じエラーが発生し、ただ5回注文を送信しようとして、それだけになります。注文を送信するすべてのコマンドでエラーが発生するわけではなく、ほとんどの注文はまだ開いています。この問題は、EAが1つのシンボルの異なるタイムフレームで複数の注文を同時に出したいときにあるケースでエラーが発生し、1つは普通に出されて、残りはこのエラーで成功しないので、トレードフローと関係があるような気がしているのですが、どうでしょうか?
もちろん、価格はNormalizeDouble(Ask,Digits) と NormalizeDouble(Bid,Digits) で正規化されています。注文の送信については、ここにある Igor Kim の関数も試してみました - この関数が処理しないので同じエラーが発生し、ただ5回注文を送信しようとして、それだけになります。注文を送信するすべてのコマンドでエラーが発生するわけではなく、ほとんどの注文はまだ開いています。この問題は、EAが1つのシンボルの異なるタイムフレームで複数の注文を同時に送信しようとするとエラーが発生するケースがあるのですが、通常1つの注文は送信されますが、他の注文は失敗するので、トレードフローと関係があるような気がしています。
Ask と Bid を使用する直前にRefreshRates() を実行する。
チャートに載せたことを後悔した。端末は深い思考に入り、約15分後、私はそれを殺した。
貼る前にコードを見ないんですね。