KimIVの便利な機能 - ページ 10 1...34567891011121314151617...128 新しいコメント 削除済み 2008.04.03 16:41 #91 KimIV さん、ありがとうございます。 Igor Kim 2008.04.04 03:44 #92 DeleteOrders()関数。テスター版。 DeleteOrders()関数は、BuyLimit、BuyStop、SellLimit、SellStopの注文を削除するためのものです。DeleteOrders()関数は汎用的で、存在するすべての注文や、関数パラメータで設定した選択条件を満たす特定の注文を削除するために使用することができます。 sy- 楽器名。テスターでは現在のシンボルしか取引できないため、このパラメータはテスター版には関係なく、この機能のオンライン版との互換性のためにのみ必要です。テスターでは、""またはNULLを使用するのがベストです。op- 取引操作の種類、保留注文の種類。5つの値のいずれかが可能である。-1、OP_BUYLIMIT、OP_BUYSTOP、OP_SELLLIMIT、OP_SELLSTOPのいずれか。mn- MagicNumber、保留中の注文の識別番号です。デフォルト値 -1 - 任意のマジックを意味する。 //+----------------------------------------------------------------------------+ //| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru | //+----------------------------------------------------------------------------+ //| Версия : 13.06.2007 | //| Описание : Удаление ордеров. Версия функции для тестов на истории. | //+----------------------------------------------------------------------------+ //| Параметры: | //| sy - наименование инструмента (NULL - текущий символ) | //| op - операция ( -1 - любой ордер) | //| mn - MagicNumber ( -1 - любой магик) | //+----------------------------------------------------------------------------+ void DeleteOrders(string sy="", int op=-1, int mn=-1) { int i, k=OrdersTotal(), ot; if (sy=="" || sy=="0") sy=Symbol(); for (i=0; i<k; i++) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { ot=OrderType(); if (ot==OP_BUYLIMIT || ot==OP_BUYSTOP || ot==OP_SELLLIMIT || ot==OP_SELLSTOP) { if (OrderSymbol()==sy && (op<0 || ot==op)) { if (mn<0 || OrderMagicNumber()==mn) { OrderDelete(OrderTicket(), clDelete); } } } } } } Igor Kim 2008.04.04 06:24 #93 DeleteOrders()関数。オンライン版 //+----------------------------------------------------------------------------+ //| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru | //+----------------------------------------------------------------------------+ //| Версия : 28.11.2006 | //| Описание : Удаление ордеров | //+----------------------------------------------------------------------------+ //| Параметры: | //| sy - наименование инструмента ( "" - любой символ, | //| NULL - текущий символ) | //| op - операция ( -1 - любой ордер) | //| mn - MagicNumber ( -1 - любой магик) | //+----------------------------------------------------------------------------+ void DeleteOrders(string sy="", int op=-1, int mn=-1) { bool fd; int err, i, it, k=OrdersTotal(), ot; if (sy=="0") sy=Symbol(); for (i=k-1; i>=0; i--) { if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) { ot=OrderType(); if (ot>1 && ot<6) { if ((OrderSymbol()==sy || sy=="") && (op<0 || ot==op)) { if (mn<0 || OrderMagicNumber()==mn) { for (it=1; it<=NumberOfTry; it++) { if (!IsTesting() && (!IsExpertEnabled() || IsStopped())) break; while (!IsTradeAllowed()) Sleep(5000); fd=OrderDelete(OrderTicket(), clDelete); if (fd) { if (UseSound) PlaySound(NameFileSound); break; } else { err=GetLastError(); Print("Error(",err,") delete order ",GetNameOP(ot), ": ",ErrorDescription(err),", try ",it); Sleep(1000*5); } } } } } } } } Igor Kim 2008.04.06 09:49 #94 DeleteOrders()関数の使用例です。 1.すべての注文を削除する。 DeleteOrders(); 2.すべてのBuyStop注文を削除します。DeleteOrders(NULL, OP_BUYSTOP); 3.マジック123456の注文をすべて削除してください。 DeleteOrders(NULL, -1, 123456); ZY. 予告編の中に、同じ例のワーキングスクリプトがあります。 ファイル: test_deleteorders.mq4 14 kb Victor Nikolaev 2008.04.06 10:00 #95 KimIV: DeleteOrders()関数の使用例です。 このままでは、図書館に行けなくなる。やっぱり図書館に行くしかないですね。誘ってくれたら。招待状がなければ行きません。 Igor Kim 2008.04.06 10:07 #96 すべての人は、左の権利を持っている...然うちょっとだけ楽しむつもりでIlnar さんが、Pending Fractal Ordersという トピックで、Pending Orders on fractalsを作るにはどうしたらいいのか? イルナーは、フラクタルの価格水準を見抜くのに苦労したのではと推測します。だから、私の機能を使うことをお勧めします。 //+----------------------------------------------------------------------------+ //| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru | //+----------------------------------------------------------------------------+ //| Версия : 07.10.2006 | //| Описание : Поиск ближайшего фрактала. | //+----------------------------------------------------------------------------+ //| Параметры: | //| sy - наименование инструмента (NULL - текущий символ) | //| tf - таймфрейм ( 0 - текущий ТФ) | //| mode - тип фрактала (MODE_LOWER|MODE_UPPER) | //+----------------------------------------------------------------------------+ double FindNearFractal(string sy="0", int tf=0, int mode=MODE_LOWER) { if (sy=="" || sy=="0") sy=Symbol(); double f=0; int d=MarketInfo(sy, MODE_DIGITS), s; if (d==0) if (StringFind(sy, "JPY")<0) d=4; else d=2; for (s=2; s<100; s++) { f=iFractals(sy, tf, mode, s); if (f!=0) return(NormalizeDouble(f, d)); } Print("FindNearFractal(): Фрактал не найден"); return(0); } 関数 FindNearFractal() は、指定されたシンボルで、指定されたタイムフレームで、指定されたタイプの最も近いフラクタルを検索し、その価格水準を返します。フラクタルがある場所の価格水準を知っていれば、この水準で注文を出すことはもう簡単です。 Alexei Kharchenko 2008.04.06 10:45 #97 KimIV: int d=MarketInfo(sy, MODE_DIGITS), s; if (d==0) if (StringFind(sy, "JPY")<0) d=4; else d=2; 質問...d と 0 の関係は? Igor Kim 2008.04.06 10:57 #98 kharko: KimIV: int d=MarketInfo(sy, MODE_DIGITS), s; if (d==0) if (StringFind(sy, "JPY")<0) d=4; else d=2; 質問...d と 0 の関係は? どうだろう...私の診療所では、d=0のケースが1件ありました。ゼロになるようにチェックを行う必要がありました。それ以来、私はこのコードをあらゆるところに引きずっている。余計なお世話かもしれませんが、少なすぎるよりは多すぎる方がいいと思うんです。 Igor Kim 2008.04.06 11:14 #99 Vinin: KimIV: DeleteOrders() の使用例です。 このままでは、図書館に行けなくなる。図書館に行くしかないでしょう。誘ってくれたら。招待状がなければ行きません。 ヴィテック、どうしたんだ?もちろん、すぐにでも庭を掘りに来てください...。あなたは助けることができる... Victor Nikolaev 2008.04.06 11:18 #100 KimIV: ヴィン KimIV: DeleteOrders() の使用例です。 このままでは、図書館に行けなくなる。やっぱり図書館に行くしかないですね。誘ってくれたら。招待状がなければ行きません。 ヴィテック、どうしたんだ?もちろん、すぐにでも庭を掘りに来てください...。あなたは助けることができる... 庭は問題ない、年齢的に無理だが。もしかしたら、もっと若い人を起用できるかもしれませんね。お風呂に行って、クワス(アレルギーなんですね、私も昔はそうでした)を食べよう。若い人の働きぶりを見てみる深刻ではないでしょう。 1...34567891011121314151617...128 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
KimIV さん、ありがとうございます。
DeleteOrders()関数。テスター版。
DeleteOrders()関数は、BuyLimit、BuyStop、SellLimit、SellStopの注文を削除するためのものです。DeleteOrders()関数は汎用的で、存在するすべての注文や、関数パラメータで設定した選択条件を満たす特定の注文を削除するために使用することができます。
sy- 楽器名。テスターでは現在のシンボルしか取引できないため、このパラメータはテスター版には関係なく、この機能のオンライン版との互換性のためにのみ必要です。テスターでは、""またはNULLを使用するのがベストです。
op- 取引操作の種類、保留注文の種類。5つの値のいずれかが可能である。-1、OP_BUYLIMIT、OP_BUYSTOP、OP_SELLLIMIT、OP_SELLSTOPのいずれか。
mn- MagicNumber、保留中の注文の識別番号です。デフォルト値 -1 - 任意のマジックを意味する。
DeleteOrders()関数。オンライン版
DeleteOrders()関数の使用例です。
1.すべての注文を削除する。
2.すべてのBuyStop注文を削除します。3.マジック123456の注文をすべて削除してください。
ZY. 予告編の中に、同じ例のワーキングスクリプトがあります。
DeleteOrders()関数の使用例です。
Ilnar さんが、Pending Fractal Ordersという トピックで、Pending Orders on fractalsを作るにはどうしたらいいのか?
イルナーは、フラクタルの価格水準を見抜くのに苦労したのではと推測します。だから、私の機能を使うことをお勧めします。
関数 FindNearFractal() は、指定されたシンボルで、指定されたタイムフレームで、指定されたタイプの最も近いフラクタルを検索し、その価格水準を返します。フラクタルがある場所の価格水準を知っていれば、この水準で注文を出すことはもう簡単です。
DeleteOrders() の使用例です。
ヴィテック、どうしたんだ?もちろん、すぐにでも庭を掘りに来てください...。あなたは助けることができる...
DeleteOrders() の使用例です。
ヴィテック、どうしたんだ?もちろん、すぐにでも庭を掘りに来てください...。あなたは助けることができる...