エラー、バグ、質問 - ページ 1789

 
Vitalie Postolache:
取引、履歴、ニュースなどのタブが配置されているウィンドウです。英語では "Toolbox "と言います。
ありがとうございます、知りませんでした、やってしまいました。現在、最後のポジションのステータスを見ることができません。残念です、最後の行だけ下がらないようにするのは本当に無理なんでしょうか?
 
Yousufkhodja Sultonov:
ありがとうございます、知りませんでした、実装しました。現在、最新のアイテムのステータスを見ることができない。残念、プログラム的に最後の行だけ下がらないようにすることはできないのでしょうか?

可能です、まさにプログラム的に。このラインをすべてのチャートに表示するインジケータを書く、といった具合です。

開発者は、この情報をステータスバーやウィンドウのタイトルバーに重複して表示させることもできますが、おそらく興味はないでしょう。

 
どうしたんですか?
AccountInfoString(ACCOUNT_SERVER) = MetaQuotes-Demo

OrderSend(NULL,OP_BUYLIMIT,1,SymbolInfoDouble(Symbol(),SYMBOL_ASK)-100*_Point,100,0,0,My Order)
Request.action = TRADE_ACTION_PENDING (5)
Request.magic = 0
Request.order = 0
Request.symbol = Si-3.17
Request.volume = 1.0
Request.price = 59647.0
Request.stoplimit = 0.0
Request.sl = 0.0
Request.tp = 0.0
Request.deviation = 100
Request.type = ORDER_TYPE_BUY_LIMIT (2)
Request.type_filling = ORDER_FILLING_RETURN (2)
Request.type_time = ORDER_TIME_GTC (0)
Request.expiration = 1970.01.01 00:00:00

Request.comment = My Order
Request.position = 0
Request.position_by = 0
Result.retcode = 10022
Result.deal = 0
Result.order = 0
Result.volume = 0.0
Result.price = 0.0
Result.bid = 0.0
Result.ask = 0.0
Result.comment = Invalid expiration
Result.request_id = 0
Result.retcode_external = 0
 
fxsaber:
エラーは何ですか?
シンボル上のORDER_TIME_GTCは サポートされていない
 
A100:
シンボル上のORDER_TIME_GTCは サポートされていない
ありがとうございました。
 

取引そのものに関わることなので、重大なバグです。

FIBOGroup-MT5 Server、デモ、基本通貨USD、Netting、ビルド1525。

まず、「Orders, Trades」の画面。

1ロットで建てたポジションを1.5ロットで決済した(反転していない!)。

1つのポジションであることは、「ポジション」の画面で確認できます。

スワップ計算(ポジションは1秒生きる)にもエラーがあり、大きな損失が出ていることを赤くハイライトしました。

ログは次のようになります。

2017.02.09 08:39:14.285 Trades  '1013175': exchange buy 1.00 EURUSD at market
2017.02.09 08:39:15.352 Trades  '1013175': deal #1542796 buy 1.00 EURUSD at 1.06763 done (based on order #2246162)
2017.02.09 08:39:15.354 Trades  '1013175': order #2246162 buy 1.00 / 1.00 EURUSD at 1.06763 done in 1069.212 ms
2017.02.09 08:39:15.354 Trades  '1013175': failed modify #2156238 buy 1.50 EURUSD sl: 0.00000, tp: 0.00000 -> sl: 1.06990, tp: 1.07190 [Invalid stops]
2017.02.09 08:39:15.355 Trades  '1013175': exchange sell 1.50 EURUSD at market, close #2156238 buy 1.50 EURUSD 1.07090333
2017.02.09 08:39:16.421 Trades  '1013175': deal #1542797 sell 1.50 EURUSD at 1.06761 done (based on order #2246163)
2017.02.09 08:39:16.422 Trades  '1013175': order #2246163 sell 1.50 / 1.50 EURUSD at 1.06761 done in 1066.734 ms

PositionGetDouble(POSITION_VOLUME) が 1.0 の代わりに 1.5 ロットを返しました。SYMBOL_TRADE_STOPS_LEVEL == 0であるが、Invalid stopsエラーが発生した。

Request.position = PositionTicketでポジションがクローズされたことを付け加えておくべきかもしれませんね。つまり、このパラメータはゼロではなかった。

全ては、お金に直結するBASE!

 

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

フォルツァ執行に関する質問

fxsaber さん 2017.02.09 08:56

この場合、OrderSendはほぼ瞬時にtrueを返しますが、65秒が観測された(ENUM_ORDER_STATE)::OrderGetInteger(ORDER_STATE) ==ORDER_STATE_STARTED ということで理解してよいでしょうか。

ところで、OrderSendで保留中の注文を出すと、注文状態がORDER_STATE_PLACEDを待たずに、ORDER_STATE_STARTEDになるとすぐに真を返すのはなぜでしょうか?

非同期のOrderSendAsyncではありません。

 
fxsaber:

ところで、OrderSendで保留中の注文を出すときに、ORDER_STATE_PLACEDを待たずに、注文状態がORDER_STATE_STARTEDになったら即Trueを返すのはなぜでしょうか?

非同期のOrderSendAsyncではありません。

おそらく、OrderSendの 実行に成功した結果であって、注文の設定に成功した結果ではないからではないでしょうか?
 
Artyom Trishkin:
おそらく、これはOrderSendが成功した結果であって、注文設定が成功した結果ではないからではないでしょうか?
ORDER_STATE_STARTED は、OrderCheck が成功した場合の結果である。
 
fxsaber:
ORDER_STATE_STARTED は、OrderCheck が成功した場合の結果である。
また、すでに注文が入っている場合は、何か返送されるのですか?
理由: