エラー、バグ、質問 - ページ 219 1...212213214215216217218219220221222223224225226...3185 新しいコメント SergiusD 2010.12.05 12:40 #2181 ポジションを保有したままストップロスを変更する(ロスレスに移行する)という基本的な操作ができないのですが、どうしたらいいですか?検索で結果が出るかと思いきや、出なかった。Requestはグローバル変数で、それでポジションが開かれ、その後ストップロスを移動させたい。bool UpdateOrderSL(double sl) { request.order = P_order; request.action = TRADE_ACTION_MODIFY; request.sl = sl; OrderSend(request, result); if(result.retcode==10009 || result.retcode==10008) { Alert("Перенос SL"); return true; } else { Alert("Запрос на изменение ордера не выполнен - код ошибки: ",GetLastError()); return false; }} 結果2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 Запрос на изменение ордера не выполнен - код ошибки: 4756 2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 failed modify order #8 buy 0.00 EURUSD at 0.00000 sl: 0.00000 tp: 0.00000 -> 1.46771, sl: 1.46771 tp: 1.47794 [Invalid request]2010.12.05 13:23:18 Core 1 2007.12.04 12:00:00 Ордер Buy успешно помещен, тикет ордера #8 構造体は正しいデータで満たされており、必要なデータを変更しても、このような結果になるのですか? Документация по MQL5: Основы языка / Переменные / Глобальные переменные www.mql5.com Основы языка / Переменные / Глобальные переменные - Документация по MQL5 Errors, bugs, questions ディスカバリーでのMetaTrader 5の実験 The EA I wrote Yedelkin 2010.12.05 12:51 #2182 Ais: こちらをクリックしてください。 カラム名について スクリーンショットから、「Profit」という隣の列をマウスでクリックしたことがわかります。"マウスのクリックについて "は、またしても意味不明です。 Yedelkin 2010.12.05 13:25 #2183 SergiusD: 出来栄え 2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 Запрос на изменение ордера не выполнен - код ошибки: 4756 2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 failed modify order #8 buy 0.00 EURUSD at 0.00000 sl: 0.00000 tp: 0.00000 -> 1.46771, sl: 1.46771 tp: 1.47794 [Invalid request] 2010.12.05 13:23:18 Core 1 2007.12.04 12:00:00 Ордер Buy успешно помещен, тикет ордера #8 構造体には正しいデータが格納されており、その中のデータを変更しても、このような結果になるのですが、なぜですか? エラーコードと"1.46771, sl: 1.46771 tp: 1.47794 "という行から、最初の2つの値の一致にエラーがある可能性があることがわかります。音量がゼロになるなど。 SergiusD 2010.12.05 13:45 #2184 Yedelkin:エラーコードと"1.46771, sl: 1.46771 tp: 1.47794" という行から、最初の2つの値の一致でエラーが発生した可能性があることがわかります。音量がゼロになるなど。TRADE_ACTION_SLTP を使ってレベルを変更すべきなんですね。 AIRAT SAFIN 2010.12.05 14:35 #2185 Yedelkin: Ais こちらをクリックしてください。 カラムの名前のところ。 スクリーンショットから、隣の「Profit」という列をマウスでクリックしたことがわかります。"マウスをクリックすることについて "は、また意味がわからない。 また」ではなく、まさに矢印で示された欄、ですから。 ウラン です。 イェデルキン 具体的にどこをクリックするのですか?列名について、それとも計算結果について?ある列をクリックすると、すべてのデータがこの列の昇順にソートされ、どこか下の方にあるが結果に近いパスがその次にソートされる。 ドットプロットは、あなたが「クリック」するよう求められた正確な列のデータを示していることに注意してください。 ヒント:「Balance max」のスケール値を参照してください。 Yedelkin 2010.12.05 14:42 #2186 Ais: そうなんです、そうなんですから。 無意味な議論はやめよう。隣接する2つの列の違いは、「結果」=「利益」+「開始残高」だけです。そのため、「Profit」をクリックすることでテーブルのデータがすでにソートされている場合、「Result」列を再度クリックすることは意味を持ちません。好奇心旺盛な研究者は、もう一度クリックしても新しい情報を得ることはできない。 ヒント:「開始残高」は固定されており、計算中に変化することはありません。 AIRAT SAFIN 2010.12.05 14:54 #2187 ドットプロットの縦目盛りが「結果」欄のデータを示しているように、では 1. 表示されたテーブルは、同じ「結果」カラムでソートされている必要があります。 2. 指定された値は、小さい値と大きい値が同時に見えるように、テーブルウィンドウの中央にある必要があります。 これらの条件を満たして初めて、結論が導き出されるのです。 Yedelkin 2010.12.05 15:09 #2188 また、点描画の水平 スケールは「Pass」列のデータを反映しているので、表も同じ「Pass」列でソートされなければなりません :)シリーズより:"Click away!":) AIRAT SAFIN 2010.12.05 15:10 #2189 ご覧ください。 sultanm: 変なのです。今回で3回目です。グラフ上では値が近い点が2つあるが、結果的には1つである。 これらは、「合格」列ではなく「結果」列のデータを表す「バランス最大」のスケール値に近い点であるため、ソートは「結果」列で行う必要があります。 ヒントは、赤い四角で囲ったポイントです。 Yedelkin 2010.12.05 15:25 #2190 Ais: Balance max "スケールに近い点数で、"Pass "カラムではなく、"Result "カラムのデータを表しているため、ソートは "Result "カラムで行う必要があります。 もちろんです :)おそらく、丸で囲ったヒント「指定された値は、小さい値と大きい値が同時に見えるように、テーブルウィンドウの中央に なければならない」のためと思われます :) sultanmさん、 面白いので、もう一度表(今度は「結果」列)をクリックして、データが同一であることを同僚に納得してもらいましょう。 1...212213214215216217218219220221222223224225226...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ポジションを保有したままストップロスを変更する(ロスレスに移行する)という基本的な操作ができないのですが、どうしたらいいですか?検索で結果が出るかと思いきや、出なかった。
Requestはグローバル変数で、それでポジションが開かれ、その後ストップロスを移動させたい。
request.order = P_order;
request.action = TRADE_ACTION_MODIFY;
request.sl = sl;
OrderSend(request, result);
if(result.retcode==10009 || result.retcode==10008) {
Alert("Перенос SL");
return true;
} else {
Alert("Запрос на изменение ордера не выполнен - код ошибки: ",GetLastError());
return false;
}
}
結果
2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 failed modify order #8 buy 0.00 EURUSD at 0.00000 sl: 0.00000 tp: 0.00000 -> 1.46771, sl: 1.46771 tp: 1.47794 [Invalid request]
2010.12.05 13:23:18 Core 1 2007.12.04 12:00:00 Ордер Buy успешно помещен, тикет ордера #8
構造体は正しいデータで満たされており、必要なデータを変更しても、このような結果になるのですか?
Ais:
こちらをクリックしてください。
カラム名について
出来栄え
2010.12.05 13:23:18 Core 1 2007.12.04 20:00:00 failed modify order #8 buy 0.00 EURUSD at 0.00000 sl: 0.00000 tp: 0.00000 -> 1.46771, sl: 1.46771 tp: 1.47794 [Invalid request]
2010.12.05 13:23:18 Core 1 2007.12.04 12:00:00 Ордер Buy успешно помещен, тикет ордера #8
構造体には正しいデータが格納されており、その中のデータを変更しても、このような結果になるのですが、なぜですか?
エラーコードと"1.46771, sl: 1.46771 tp: 1.47794" という行から、最初の2つの値の一致でエラーが発生した可能性があることがわかります。音量がゼロになるなど。
TRADE_ACTION_SLTP を使ってレベルを変更すべきなんですね。
Ais
こちらをクリックしてください。
カラムの名前のところ。
また」ではなく、まさに矢印で示された欄、ですから。
具体的にどこをクリックするのですか?列名について、それとも計算結果について?
ドットプロットは、あなたが「クリック」するよう求められた正確な列のデータを示していることに注意してください。
ヒント:「Balance max」のスケール値を参照してください。
そうなんです、そうなんですから。
無意味な議論はやめよう。隣接する2つの列の違いは、「結果」=「利益」+「開始残高」だけです。そのため、「Profit」をクリックすることでテーブルのデータがすでにソートされている場合、「Result」列を再度クリックすることは意味を持ちません。好奇心旺盛な研究者は、もう一度クリックしても新しい情報を得ることはできない。
ヒント:「開始残高」は固定されており、計算中に変化することはありません。
ドットプロットの縦目盛りが「結果」欄のデータを示しているように、では
1. 表示されたテーブルは、同じ「結果」カラムでソートされている必要があります。
2. 指定された値は、小さい値と大きい値が同時に見えるように、テーブルウィンドウの中央にある必要があります。
これらの条件を満たして初めて、結論が導き出されるのです。
また、点描画の水平 スケールは「Pass」列のデータを反映しているので、表も同じ「Pass」列でソートされなければなりません :)シリーズより:"Click away!":)
ご覧ください。
sultanm:
変なのです。今回で3回目です。グラフ上では値が近い点が2つあるが、結果的には1つである。これらは、「合格」列ではなく「結果」列のデータを表す「バランス最大」のスケール値に近い点であるため、ソートは「結果」列で行う必要があります。
ヒントは、赤い四角で囲ったポイントです。
Balance max "スケールに近い点数で、"Pass "カラムではなく、"Result "カラムのデータを表しているため、ソートは "Result "カラムで行う必要があります。
もちろんです :)おそらく、丸で囲ったヒント「指定された値は、小さい値と大きい値が同時に見えるように、テーブルウィンドウの中央に なければならない」のためと思われます :)
sultanmさん、 面白いので、もう一度表(今度は「結果」列)をクリックして、データが同一であることを同僚に納得してもらいましょう。