初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 642 1...635636637638639640641642643644645646647648649...1503 新しいコメント Maxim Kuznetsov 2016.10.12 21:04 #6411 paylesss:ありがとうございます! パソコンを再起動したら、助かりました! 残念! 朝からずっと座っていました))さて、もっと関連するのはターミナルのビルドで、 グローバル変数が失敗 するようなことをしたのか覚えておくことが望ましいでしょう。もし、その状況を再現することが可能であれば、それは素晴らしいことだと思います。 Vladislav Andruschenko 2016.10.13 06:09 #6412 Kirill Andreev:はフクロウを書いたのですが、なぜかトレーリングストップが効きません...。その理由は何でしょうか? を動作させるには、OnTickに記述する必要があります。 Kirill Andreev 2016.10.13 16:21 #6413 Vladislav Andruschenko: OnTickに入れないと動作しない。 ありがとうございます、試してみます!!! mila.com 2016.10.13 19:43 #6414 こんにちは。 最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか? int i; total = OrdersTotal(); for(i = 0; i < total; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } } Aleksey Vyazmikin 2016.10.13 22:40 #6415 mila.com:こんにちは。 最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか? int i; total = OrdersTotal(); for(i = 0; i < total-1; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } } Artyom Trishkin 2016.10.14 04:22 #6416 -Aleks-: int i; total = OrdersTotal(); for(i = 0; i < total-1; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } }リストの最後の位置を見逃す確実な方法を示しているのでしょうか?現実的な取引をすると、仕分けがいきなり依存症になる心配はないのですか?最初のサイクルでは、 オープン時間によって 最新のポジションを検索し、2番目のサイクルでは、最初のサイクルで見つかったチケットのもの以外をすべて修正します。 Alexey Viktorov 2016.10.14 05:46 #6417 mila.com:こんにちは。 最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか? 私ならそうします。/********************Script program start function********************/ void OnStart() { int i, t1, t2, clTicket, total = OrdersTotal(); datetime d1, d2; double v1, v2, clVolume; for(i = total-1; i > 0; i--) { if(OrderSelect(i, SELECT_BY_POS)) { t1 = OrderTicket(); d1 = OrderOpenTime(); v1 = OrderLots(); } else continue; if(OrderSelect(i-1, SELECT_BY_POS)) { t2 = OrderTicket(); d2 = OrderOpenTime(); v2 = OrderLots(); } else continue; clTicket = d1 > d2 ? t1 : t2; clVolume = d1 > d2 ? v1 : v2; if(!OrderClose(clTicket, clVolume, OrderClosePrice(), 100)) // закрывает независимо от типа ордера OP_BUY или OP_SELL Print("фигня кака-та"); } }/********************************************************************/ チェックを入れていないので、次の注文を締め切った時に注文リストに「隙間」ができてしまうかどうか判断がつきません。もし、このような「隙間」が現れる可能性について説明できる方がいらっしゃれば、ありがたいのですが...。保険として、他のオーダーを挿入しておき、もしギャップがあれば、1つのオーダーをスキップすることになります。私にはそう思えるのです。 削除済み 2016.10.14 05:56 #6418 Alexey Viktorov:私ならそうします。残念ながら、これはテストしていないので、次の注文が締め切られた後、注文のリストに「穴」が開くかどうかはわかりません。もし、このような「隙間」が現れる可能性について説明できる方がいらっしゃれば、ありがたいのですが...。保険として、もう1つのcontinueが挿入され、ギャップがあれば、単に1つのオーダーをスキップします。私にはこのように思えるのです。もともとは、ラストオーダーをスキップ するための質問でした。そして、そこからがスタートです。この方法でやるしかない。for(int i = total-2; i >= 0; i--)そうすると、削除後のギャップがなくなり、最新のオーダーがスキップされるようになります。 Alexey Viktorov 2016.10.14 06:25 #6419 Alexey Kozitsyn:本来の質問は、ラストオーダーをスキップ することです。ここからが本番です。この方法でやるしかない。そうすると、削除後のスキップはなく、最新のオーダーがスキップされることになります。リストの最後ではなく、時間的に「最年少」のものです。私も同じように気が利かないのですが。改造についての質問で、近く書いているのですが・・・。また、単に修正するだけでは、注文のリストに穴があいてしまうので...。ただ、変数を追加して値を割り 当てる必要があるかもしれませんし、1番のエラーを回避するためにパラメータのチェックは必須です。まあ、ミラは自分でなんとかするよ。 Artyom Trishkin 2016.10.14 06:30 #6420 Alexey Kozitsyn:本来の質問は、ラストオーダーをスキップ することです。ここからが本番です。この方法でやるしかない。for(int i = total-2; i >= 0; i--)そうすると、削除後のスキップはなく、直近のオーダーがスキップされます。並べ替えの依存性がなく、間違った順番を見逃すことはない のでしょうか?繰り返しますが、 最後の注文を正確に見つけるには、リスト内の位置ではなく、 開始時刻で 識別する必要があります。 1...635636637638639640641642643644645646647648649...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ありがとうございます! パソコンを再起動したら、助かりました! 残念! 朝からずっと座っていました))
さて、もっと関連するのはターミナルのビルドで、 グローバル変数が失敗 するようなことをしたのか覚えておくことが望ましいでしょう。もし、その状況を再現することが可能であれば、それは素晴らしいことだと思います。
はフクロウを書いたのですが、なぜかトレーリングストップが効きません...。その理由は何でしょうか?
OnTickに入れないと動作しない。
こんにちは。
最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか?
int i; total = OrdersTotal(); for(i = 0; i < total; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } }
こんにちは。
最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか?
int i; total = OrdersTotal(); for(i = 0; i < total-1; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } }
int i; total = OrdersTotal(); for(i = 0; i < total-1; i++) { if(OrderSelect(i, SELECT_BY_POS) && OrderLots() == _Lots) { if (OrderType()==OP_BUY) { if (OrderOpenPrice()!=OrderStopLoss()) { ModifyOrder(-1,OrderOpenPrice() , -1); } } } }
リストの最後の位置を見逃す確実な方法を示しているのでしょうか?
現実的な取引をすると、仕分けがいきなり依存症になる心配はないのですか?
最初のサイクルでは、 オープン時間によって 最新のポジションを検索し、2番目のサイクルでは、最初のサイクルで見つかったチケットのもの以外をすべて修正します。
こんにちは。
最後の「若手」以外のポジションを修正したいのですが、助けてください。どこで1つ足したり引いたりするのですか?
私ならそうします。
チェックを入れていないので、次の注文を締め切った時に注文リストに「隙間」ができてしまうかどうか判断がつきません。
もし、このような「隙間」が現れる可能性について説明できる方がいらっしゃれば、ありがたいのですが...。
保険として、他のオーダーを挿入しておき、もしギャップがあれば、1つのオーダーをスキップすることになります。私にはそう思えるのです。
私ならそうします。
残念ながら、これはテストしていないので、次の注文が締め切られた後、注文のリストに「穴」が開くかどうかはわかりません。
もし、このような「隙間」が現れる可能性について説明できる方がいらっしゃれば、ありがたいのですが...。
保険として、もう1つのcontinueが挿入され、ギャップがあれば、単に1つのオーダーをスキップします。私にはこのように思えるのです。
もともとは、ラストオーダーをスキップ するための質問でした。そして、そこからがスタートです。
この方法でやるしかない。
そうすると、削除後のギャップがなくなり、最新のオーダーがスキップされるようになります。
本来の質問は、ラストオーダーをスキップ することです。ここからが本番です。
この方法でやるしかない。
そうすると、削除後のスキップはなく、最新のオーダーがスキップされることになります。
リストの最後ではなく、時間的に「最年少」のものです。
私も同じように気が利かないのですが。改造についての質問で、近く書いているのですが・・・。また、単に修正するだけでは、注文のリストに穴があいてしまうので...。ただ、変数を追加して値を割り 当てる必要があるかもしれませんし、1番のエラーを回避するためにパラメータのチェックは必須です。まあ、ミラは自分でなんとかするよ。
本来の質問は、ラストオーダーをスキップ することです。ここからが本番です。
この方法でやるしかない。
そうすると、削除後のスキップはなく、直近のオーダーがスキップされます。
並べ替えの依存性がなく、間違った順番を見逃すことはない のでしょうか?
繰り返しますが、 最後の注文を正確に見つけるには、リスト内の位置ではなく、 開始時刻で 識別する必要があります。