//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает тип последней закрытой позиции или -1 |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+intGetTypeLastClosePos(stringsy="", intmn=-1){datetimet;
inti, k=OrdersHistoryTotal(), r=-1;
if(sy=="0")sy=Symbol();
for(i=0; i<k; i++){if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)){if((OrderSymbol()==sy || sy=="") && (mn<0 || OrderMagicNumber()==mn)){if(OrderType()==OP_BUY || OrderType()==OP_SELL){if(t<OrderCloseTime()){t=OrderCloseTime();
r=OrderType();
}}}}}return(r);
}
//+----------------------------------------------------------------------------+//| Автор : Ким Игорь В. aka KimIV, http://www.kimiv.ru |//+----------------------------------------------------------------------------+//| Версия : 19.02.2008 |//| Описание : Возвращает тип последней открытой позиции или -1 |//+----------------------------------------------------------------------------+//| Параметры: |//| sy - наименование инструмента ("" - любой символ, |//| NULL - текущий символ) |//| mn - MagicNumber (-1 - любой магик) |//+----------------------------------------------------------------------------+intGetTypeLastOpenPos(stringsy="", intmn=-1){datetimet;
inti, k=OrdersTotal(), r=-1;
if(sy=="0")sy=Symbol();
for(i=0; i<k; i++){if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){if((OrderSymbol()==sy || sy=="") && (mn<0 || OrderMagicNumber()==mn)){if(OrderType()==OP_BUY || OrderType()==OP_SELL){if(t<OrderOpenTime()){t=OrderOpenTime();
r=OrderType();
}}}}}return(r);
}
GetTypeLastClosePos()関数。
この関数は、最後に閉じた位置の型、または-1を返す。考慮すべき位置をより正確に選択するために、外部パラメータで定義します。
GetTypeLastOpenPos()関数。
この関数は、最後のオープンポジションのタイプまたは-1を返します。考慮すべき位置をより正確に選択するために、外部パラメータで指定します。
オンライン用のOpenPosition()関数です。
エラーコード 142、143は何を意味しているのか。
ありがとうございます。
エラーコード142、143は何を意味しているのですか?
142 - 注文がキューに入れられました。
143 - 注文がディーラーによって執行のために受理されました。
詳しくは、こちらを ご覧ください。
ドクターはエラーとして 扱うようアドバイスしている128
できれば、あなたの視点や立場から、一言二言お願いします。
ドクターはエラーとして扱うようアドバイスしている 128
できれば、あなたの視点や立場から一言お願いします...。
私の考え方は、2つ上の投稿でAndreiが示したコードで表現されています。
すみません...はもちろん見たが...。
ちょっと腑に落ちないところがありますね。
それ以外は、どうだろう...。ね
しかし、もし、さらになら、そうでもない。
つまり、寝て、ポジションがあれば、行進曲を弾けば いいのです。
-
OK、もし、もっといい加減な質問だったら、またごめんなさい、未回答でも かまいません。
OK、もっといい加減な質問だったら、また申し訳 ないので、この辺にして おきます。
な...整理しましょう...対決が理解を深める...ただ、何がわからないのかがわからない。質問をよりシンプルに、よりありきたりな言葉で表現してください。ハイバネーション間隔に迷っていませんか?なぜ、きっかり66秒なのか?
いや、そんなことはない! 間違いない...。夢にも思わなかった
しかし、この断片のさらなる論理的な連続動作は、あまりよくない。
エラーコードが出て、スリープして、ブーレットが出て、この機能がオンになっていればスポインのワルツが再生されるとしよう...。
-
(くっそー、メッセージの尻尾が消えてる、繰り返しになるけど :((
-
それよりも、始まったことをどう継続させるかに興味があります。
すなわち、さらなる取引ジェスチャー:機能が一気呵成になるのか
機能が開くまでチャックするか、別の機能に制御を委ねるか......。
最初のケースでは、どのように "ループ"、 "自分自身 "を呼び出すために、または何を明確ではありません?
うーん...まだ、わからないんです。適当に撮影する。エラー128、142、143については、以下のすべてが適用されます。
エラー128が何らかの形で処理されない場合、1つのオープンポジションではなく、2つの同じオープンポジションが発生する危険性があります。2年間、2つのリアル口座で取引してきたが、そのようなケースは1回だけだった。重複ポジションは、何らかの理由で取引サーバーから端末に注文実行時間終了のメッセージが返されたために発生します。端末がサービスを拒否されたわけではありません。取引はまだ実行されるかもしれません。ただ、その実行が「許容できないほど」長い間、延期されただけです。このメッセージの後に別のリクエストを送ると、遅れたリクエストと新しいリクエストの両方が実行されることがあります。このような事態を避けるため、開発者は、少なくとも1分間、一時停止して、取引サーバーが遅延メッセージを送信したリクエストが実行されたかどうかを確認するようアドバイスしています。YESなら目標達成、つまりポジションはオープン、NOならリクエストを 繰り返すことができる。私のコードでは、128,142,143のエラーをこのように処理しています。