初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 113 1...106107108109110111112113114115116117118119120...260 新しいコメント ponochka 2018.02.01 14:01 #1121 こんにちは!!! すべての注文(売りと買い)を、すでに開いている場合でも、EAが開くようにする必要があります。Help plz......I am grateful in advance...。今のところ、私のコードにはこのようなものがあります。PHPのコードです。void start(){ if(NewBar()){// アルゴリズムそのものなど。}}bool NewBar(){ staticdatetimelastbar=0;datetime curbar=iTime(Symbol(),0,0); if(lastbar!=curbar){lastbar=curbar; return(true);} return(false);}. qroner 2018.02.01 14:48 #1122 qroner:void Uchet_Orderov_Function(string _Simvol, int _Magic, int &_Mas[8]){。ArrayInitialize(_Mas, 0)とする。int Ticket=-1;for(int pos=OrdersTotal()-1; pos>=0; pos--){。if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES) && OrderSymbol()==_Simvol&&&)OrderMagicNumber()==_Magic && OrderTicket()!=Ticket){ オーダーマジック番号()==_Magic && オーダーチケット()===TicketTicket=OrderTicket()です。switch(OrderType()の場合){。case 0:{_Mas[0]++;_Mas[6]++;break;}case 1:{_Mas[1]++;_Mas[6]++;break;}case 2:{_Mas[2]++;_Mas[7]++;break;}case 3:{_Mas[3]++;_Mas[7]++;break;}case 4:{_Mas[4]++;_Mas[7]++;break;}case 5:{_Mas[5]++;_Mas[7]++;break;}}}}} これがその機能です。 ただ、標準モードではエラーが出ないので、問題はコードにないのではと思いました。 とにかく、誰も答えてくれないようで・・・。 Vladimir 2018.02.01 22:56 #1123 qroner:とにかく、誰も答えてくれないようです・・・。 端末では69行目にエラーがあると表示されるが、行数の少ないプログラムテキストを表示すると...。どのように答えたいですか? Konstantin Erin 2018.02.02 07:22 #1124 qroner: とにかく、誰も答えてくれなさそう...。投稿された関数にエラーはないようです。OrderTicket()!=Ticket を使って、同じチケットで隣接する注文をふるい落とすのに戸惑っています。そのような命令がないことを確認し、確認する。コンパイラで(69,25) が指定されている場合は、69行目の25の位置を見てください - エラーはそこにあります。この1行を入力します。 削除済み 2018.02.02 08:07 #1125 Vladimir: 端末では69行目がエラーと表示されるが、行数の少ないプログラムテキストを表示すると...。何を基準に答えたいのか?69のラインナップが本当に気になる qroner 2018.02.02 14:33 #1126 ふっ、誰も反応しないと思っていたのに。 以下はその部分のコードです。 66 double Volatility(int _period){ [ボラティリティ](int _period)67 double summ = 0;68 for(int i=1; i<=_period; i++)69 summ+=MathAbs(High[i]-Low[i])70 return(NormalizeDouble(sum/_period,Digits))する。71 } ありがとうございました。 Konstantin Erin 2018.02.02 14:54 #1127 qroner:ふっ、誰も反応しないと思っていたのに。以下はその部分のコードです。66 double Volatility(int _period){ [ボラティリティ](int _period)67 double summ = 0;68 for(int i=1; i<=_period; i++)69 summ+=MathAbs(High[i]-Low[i])70 return(NormalizeDouble(sum/_period,Digits))する。71 }ご指摘ありがとうございます。すべてがクリアになる。エラーは summ+=MathAbs(High[i]-Low[i]) という行にあります。端から25の位置を数えると、おそらく High[i] に戻ってしまうでしょう。 Alert(Low[-1]) と書きましたが、コンパイラは正の数を要求します。int n=-1; Alert(Low[n]); - Array out of rangre を実行するとき、と書きました。しかし、どうしてi<0になるのでしょうか? たぶん、ヒストリカルデータがないのでしょう。に ... Alex sha 2018.02.05 06:02 #1128 どのトレーダーを選べばいいのか、正確なサーバー名を教えてください。 Konstantin Nikitin 2018.02.05 07:10 #1129 qroner:ふっ、誰も反応しないと思っていたのに。 以下はその部分のコードです。 66 double Volatility(int _period){ [ボラティリティ](int _period)67 double summ = 0;68 for(int i=1; i<=_period; i++)69 summ+=MathAbs(High[i]-Low[i])70 return(NormalizeDouble(sum/_period,Digits))する。71 } ご指摘ありがとうございます。 double Volatility(int _period) { double summ = 0; for(int i=1; i<=_period; i++) if(ArraySize(High) > i && ArraySize(Low) > i) summ+=MathAbs(High[i]-Low[i]); return(NormalizeDouble(summ/_period, Digits)); }double Volatility(int _period) { double summ = 0; int src = MathMin(MathMin(_period, ArraySize(High)), ArraySize(Low)); for(int i=1; i<src; i++) summ+=MathAbs(High[i]-Low[i]); return(NormalizeDouble(summ/_period, Digits)); } 期間(period)が配列の項目より 大きな値を持つことがあるようです。それゆえ、アレイのオーバーランが発生するのです。 いずれかを選択してください。 Rewerpool 2018.02.05 08:26 #1130 こんにちは!私はどのようにトリガーを作成することができますか? 例えば、私はこの条件が必要です if(iClose(NULL,HTF,4)<BlueLine) if it is executed DayDown = 1 !Q: DayDownを1のままにして、翌日までポーリングしないようにするにはどうしたらよいですか? 1...106107108109110111112113114115116117118119120...260 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
すべての注文(売りと買い)を、すでに開いている場合でも、EAが開くようにする必要があります。Help plz......I am grateful in advance...。
今のところ、私のコードにはこのようなものがあります。
{
if(NewBar())
{
// アルゴリズムそのものなど。
}
}
bool NewBar()
{
staticdatetimelastbar=0;
datetime curbar=iTime(Symbol(),0,0);
if(lastbar!=curbar)
{
lastbar=curbar;
return(true);
}
return(false);
}.
}
これがその機能です。
ただ、標準モードではエラーが出ないので、問題はコードにないのではと思いました。
とにかく、誰も答えてくれないようで・・・。
とにかく、誰も答えてくれないようです・・・。
投稿された関数にエラーはないようです。OrderTicket()!=Ticket を使って、同じチケットで隣接する注文をふるい落とすのに戸惑っています。そのような命令がないことを確認し、確認する。コンパイラで(69,25) が指定されている場合は、69行目の25の位置を見てください - エラーはそこにあります。この1行を入力します。
69のラインナップが本当に気になる
ふっ、誰も反応しないと思っていたのに。
以下はその部分のコードです。
66 double Volatility(int _period){ [ボラティリティ](int _period)
67 double summ = 0;
68 for(int i=1; i<=_period; i++)
69 summ+=MathAbs(High[i]-Low[i])
70 return(NormalizeDouble(sum/_period,Digits))する。
71 }
ありがとうございました。
ふっ、誰も反応しないと思っていたのに。
以下はその部分のコードです。
66 double Volatility(int _period){ [ボラティリティ](int _period)
67 double summ = 0;
68 for(int i=1; i<=_period; i++)
69 summ+=MathAbs(High[i]-Low[i])
70 return(NormalizeDouble(sum/_period,Digits))する。
71 }
ご指摘ありがとうございます。
すべてがクリアになる。エラーは summ+=MathAbs(High[i]-Low[i]) という行にあります。端から25の位置を数えると、おそらく High[i] に戻ってしまうでしょう。
Alert(Low[-1]) と書きましたが、コンパイラは正の数を要求します。int n=-1; Alert(Low[n]); - Array out of rangre を実行するとき、と書きました。しかし、どうしてi<0になるのでしょうか? たぶん、ヒストリカルデータがないのでしょう。に ...
どのトレーダーを選べばいいのか、正確なサーバー名を教えてください。
ふっ、誰も反応しないと思っていたのに。
以下はその部分のコードです。
66 double Volatility(int _period){ [ボラティリティ](int _period)
67 double summ = 0;
68 for(int i=1; i<=_period; i++)
69 summ+=MathAbs(High[i]-Low[i])
70 return(NormalizeDouble(sum/_period,Digits))する。
71 }
ご指摘ありがとうございます。
期間(period)が配列の項目より 大きな値を持つことがあるようです。それゆえ、アレイのオーバーランが発生するのです。
いずれかを選択してください。