FORTS 助けてください - ページ 30 1...232425262728293031 新しいコメント Mikhail Filimonov 2015.10.22 13:34 #291 demonsn: ありがとうございます。並行チェックとして、お客様のオプションを追加しました。あとはタイミングをつかむだけです。100%うまくいきますよ!構造体を正しく埋めていないからです(フィールドだけでなく、値も)。コンパイラが「悪態」をつかなかったのが不思議です。あなたです。MqlTradeRequest.action = TRADE_ACTION_DEAL;必要なんです。MtRequest.action = TRADE_ACTION_DEAL; Сергей 2015.10.22 14:34 #292 でも、違うんです!私のメッセージにあるコードはExpert Advisorのものではなく、Expert Advisorからデバッグ情報が書き込まれたログの断片を修正したものです。私のミスです(笑)。 EA自体は必要な構造を埋めていくが、チェックの結果は異なる。マージンを正しく計算するか、例のような無意味なものを表示するかのどちらかです。以下は、ライブサイトからの抜粋です。 MqlTradeRequest MtRequest = {0}; switch(OrderType) { case ORDER_TYPE_BUY: MtRequest.price = CurrentTick.ask; break; case ORDER_TYPE_SELL: MtRequest.price = CurrentTick.bid; break; default: LogFile.Log(LOG_PRINT,__FUNCTION__," error: Invalid OrderType"); return(false); } MtRequest.tp = 0.0; MtRequest.sl = 0.0; MtRequest.action = TRADE_ACTION_DEAL; MtRequest.magic = 0; MtRequest.symbol = strSymbol; MtRequest.volume = dblLots; MtRequest.deviation = Config.Deviation; MtRequest.type = OrderType; MtRequest.type_filling = Config.OrdersFillingType; Mikhail Filimonov 2015.10.22 14:41 #293 そうしてください。 MqlTradeRequest MtRequest = {0}; MqlTradeRequest MtResult = {0}; switch(OrderType) { case ORDER_TYPE_BUY: MtRequest.price = CurrentTick.ask; break; case ORDER_TYPE_SELL: MtRequest.price = CurrentTick.bid; break; default: LogFile.Log(LOG_PRINT,__FUNCTION__," error: Invalid OrderType"); return(false); } MtRequest.action = TRADE_ACTION_DEAL; MtRequest.magic = 77777777777777; MtRequest.symbol = strSymbol; MtRequest.volume = dblLots; MtRequest.type = OrderType; MtRequest.type_filling = Config.OrdersFillingType; MtRequest.type_time = ORDER_TIME_DAY; Сергей 2015.10.22 14:47 #294 ここにもログの瞬間がある。 MqlTradeRequest structure: action: Action Deal magic: 0 order: 0 symbol: Si-12.15 volume: 2.00 price: 63365 stoplimit: 0 sl: 0 tp: 0 deviation: 50 type: ORDER_TYPE_SELL type_filling: ORDER_FILLING_FOK type_time: gtc expiration: 1970.01.01 00:00 comment: (null) MqlTradeCheckResult structure: retcode: 10019 (There is not enough money to complete the request) balance: 133921.71 equity: 132772.57 profit: 0.00 margin: 172148.68 margin_free: -39376.11 margin_level: 77.13 comment: No money同じ構造体をOrderSend() に渡すと、すべてが完璧に開きますちなみに、ビルド1194。Si-12.15、2ロットを販売。1コントラクトのGOが5090ルーブル。取引はQR 5090*2 = 10180 RUBが必要です。しかし、この関数は172148.68ルーブルを返し、これは172148.68 / 5090 = 33.82契約に相当します!なんという奇跡...。 Mikhail Filimonov 2015.10.22 14:57 #295 demonsn:ここにもログの瞬間がある。同じ構造体をOrderSend()に渡すと、すべてが完璧に開きますちなみに、ビルド1194。Si-12.15、2ロットを販売。1コントラクトのGOが5090ルーブル。取引はQR 5090*2 = 10180 RUBが必要です。そして、この関数は172148.68ルーブルを返し、これは172148.68 / 5090 = 33.82コントラクトに相当します!何が不思議なのか...1.きちんとした構成の記入例を示したのに、このアドバイスを無視するんですね。では、なぜ聞くのですか?2. 1194 ビルドは現在のサーバーと互換性がありません (Renat はこれについて言及しました。当面はビルド 1159 を使用してください)。3.OrderCheck()関数を全く使わず、自分で資金を 確認しています。//+------------------------------------------------------------------+ //| Expert Check money function | //+------------------------------------------------------------------+ bool CheckMoney( const string a_symbol, const long volume ) { if ( volume <= 0 ) { Print( "Check Money: Объём лота указан не правильно!" ); retutn ( false ); } //--- double a_go = SymbolInfoDouble( a_symbol, SYMBOL_MARGIN_INITIAL ) * double( volume); double free_margin = ( AccountInfoDouble( ACCOUNT_FREEMARGIN ) / 100 ) * 90; //90% от свободных средств //--- if ( a_go <= free_margin ) { return( true ); } Print( "Check Money: Не достаточно средств!" ); return( false ); } Сергей 2015.10.22 15:27 #296 Михаил:1.構造を正しく記入するための見本を示したのに、このアドバイスを無視する。では、なぜ聞くのですか?2) Build 1194は現在のサーバーと互換性がありません(Renatが言及しました。当面はBuild 1159を使用してください)。3.OrderCheck()を全く使わず、自分で手段を 確認している。1.全く無視はしていません。全く無視しているわけではありません。あなたのサンプルをコードに組み込み、今、それを観察しているところです。2.やばい!それは知らなかった。3.私も同じことをしました。そして、機能は90%を除いてほとんど同じです(ところで、良いアイデアです)。私がこの質問をしたのは、私の関数(あなたのものと似ている)がCSをチェックし、ポジションを開くことを可能にする一方で、標準のOrderCheck()が時々失敗するからです。おそらくポイント2のことを指しているのでしょう。端末のログには、こんなメッセージがたくさん残っています。2015.10.22 21:28:13.966 Ticks old tick @RTS (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:28:13.966 Ticks old tick RTS-12.15 (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:28:13.966 Ticks old tick @RTS (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:28:13.966 Ticks old tick RTS-12.15 (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:28:13.966 Ticks old tick @RTS (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:28:13.966 Ticks old tick RTS-12.15 (tick: 2015.10.22 18:28:21, last: 2015.10.22 18:28:22) 0/0 2015.10.22 21:27:40.995 Ticks old tick @LKOH (tick: 2015.10.22 18:27:48, last: 2015.10.22 18:27:49) 0/0 2015.10.22 21:27:40.995 Ticks old tick LKOH-12.15 (tick: 2015.10.22 18:27:48, last: 2015.10.22 18:27:49) 0/0 2015.10.22 21:26:38.952 Ticks old tick @Si (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick Si-12.15 (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick @Si (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick Si-12.15 (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick @Si (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick Si-12.15 (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick @Si (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick Si-12.15 (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 2015.10.22 21:26:38.952 Ticks old tick @Si (tick: 2015.10.22 18:26:46, last: 2015.10.22 18:26:47) 0/0 Mikhail Filimonov 2015.10.22 15:31 #297 demonsn:1.なぜ無視しなければならないのか?全く無視しているわけではありません。あなたのサンプルをコードに入れました、今、見ています。2.やばい!それは知らなかった。3.私も同じことをしました。そして、機能は90%以外、ほとんど同じです(ちなみに、いいアイデアです)私がこの質問をしたのは、私の関数(あなたの関数と同様)がCSをチェックし、ポジションを開くことを可能にする一方で、標準のOrderCheck()が時々不具合を起こすからです。 そのため、FORTSでは自分のものを使う方が正しいのです。) Сергей 2015.10.22 15:37 #298 Михаил: そのため、FORTSではすべて自分のものを使う方が正しいです :)結局そうなるのか!?ホイール」を書く時間を短縮したり、あるアイデアをテストするために、他人のコードやライブラリを使いたくなることがある。しかし、結局は他の開発者のエラーや不具合をキャッチすることに1週間を費やさなければならないのです。最終的にはすべて書き換えて、他人のコードの痕跡を残さないようにします。 Andrey Kotrin 2015.10.24 12:27 #299 こんにちは。先物の糊がテストウィンドウに表示され、それ自体は非常に喜ばしいのですが、糊と契約を一致させようとすると、糊には全く取引がなく、契約には全て問題なく、かなり多くの取引があることが分かりました。Si,RTS,GAZR,SBRFの4つの商品と期間2015.01.01~24.10.2015で確認しました。 Mikhail Filimonov 2015.10.24 14:44 #300 Andrey Kotrin:こんにちは。先物の糊がテストウィンドウに表示され、それ自体は非常に喜ばしいのですが、糊と契約を一致させようとすると、糊には全く取引がなく、契約には全て問題なく、かなり多くの取引があることが分かりました。Si,RTS,GAZR,SBRFの4つの商品と期間2015.01.01~24.10.2015で確認しました。 先物でテスターが正常に動作しない。 1...232425262728293031 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ありがとうございます。並行チェックとして、お客様のオプションを追加しました。あとはタイミングをつかむだけです。
100%うまくいきますよ!
構造体を正しく埋めていないからです(フィールドだけでなく、値も)。
コンパイラが「悪態」をつかなかったのが不思議です。
あなたです。
必要なんです。
MtRequest.action = TRADE_ACTION_DEAL;
でも、違うんです!私のメッセージにあるコードはExpert Advisorのものではなく、Expert Advisorからデバッグ情報が書き込まれたログの断片を修正したものです。私のミスです(笑)。
EA自体は必要な構造を埋めていくが、チェックの結果は異なる。マージンを正しく計算するか、例のような無意味なものを表示するかのどちらかです。
以下は、ライブサイトからの抜粋です。
そうしてください。
ここにもログの瞬間がある。
同じ構造体をOrderSend() に渡すと、すべてが完璧に開きます
ちなみに、ビルド1194。
Si-12.15、2ロットを販売。1コントラクトのGOが5090ルーブル。取引はQR 5090*2 = 10180 RUBが必要です。しかし、この関数は172148.68ルーブルを返し、これは172148.68 / 5090 = 33.82契約に相当します!
なんという奇跡...。
ここにもログの瞬間がある。
同じ構造体をOrderSend()に渡すと、すべてが完璧に開きます
ちなみに、ビルド1194。
Si-12.15、2ロットを販売。1コントラクトのGOが5090ルーブル。取引はQR 5090*2 = 10180 RUBが必要です。そして、この関数は172148.68ルーブルを返し、これは172148.68 / 5090 = 33.82コントラクトに相当します!
何が不思議なのか...
1.きちんとした構成の記入例を示したのに、このアドバイスを無視するんですね。
では、なぜ聞くのですか?
2. 1194 ビルドは現在のサーバーと互換性がありません (Renat はこれについて言及しました。当面はビルド 1159 を使用してください)。
3.OrderCheck()関数を全く使わず、自分で資金を 確認しています。
1.構造を正しく記入するための見本を示したのに、このアドバイスを無視する。
では、なぜ聞くのですか?
2) Build 1194は現在のサーバーと互換性がありません(Renatが言及しました。当面はBuild 1159を使用してください)。
3.OrderCheck()を全く使わず、自分で手段を 確認している。
1.全く無視はしていません。全く無視しているわけではありません。あなたのサンプルをコードに組み込み、今、それを観察しているところです。
2.やばい!それは知らなかった。
3.私も同じことをしました。そして、機能は90%を除いてほとんど同じです(ところで、良いアイデアです)。
私がこの質問をしたのは、私の関数(あなたのものと似ている)がCSをチェックし、ポジションを開くことを可能にする一方で、標準のOrderCheck()が時々失敗するからです。
おそらくポイント2のことを指しているのでしょう。
端末のログには、こんなメッセージがたくさん残っています。
1.なぜ無視しなければならないのか?全く無視しているわけではありません。あなたのサンプルをコードに入れました、今、見ています。
2.やばい!それは知らなかった。
3.私も同じことをしました。そして、機能は90%以外、ほとんど同じです(ちなみに、いいアイデアです)
私がこの質問をしたのは、私の関数(あなたの関数と同様)がCSをチェックし、ポジションを開くことを可能にする一方で、標準のOrderCheck()が時々不具合を起こすからです。
そのため、FORTSではすべて自分のものを使う方が正しいです :)
結局そうなるのか!?ホイール」を書く時間を短縮したり、あるアイデアをテストするために、他人のコードやライブラリを使いたくなることがある。
しかし、結局は他の開発者のエラーや不具合をキャッチすることに1週間を費やさなければならないのです。最終的にはすべて書き換えて、他人のコードの痕跡を残さないようにします。
こんにちは。
先物の糊がテストウィンドウに表示され、それ自体は非常に喜ばしいのですが、糊と契約を一致させようとすると、糊には全く取引がなく、契約には全て問題なく、かなり多くの取引があることが分かりました。Si,RTS,GAZR,SBRFの4つの商品と期間2015.01.01~24.10.2015で確認しました。
こんにちは。
先物の糊がテストウィンドウに表示され、それ自体は非常に喜ばしいのですが、糊と契約を一致させようとすると、糊には全く取引がなく、契約には全て問題なく、かなり多くの取引があることが分かりました。Si,RTS,GAZR,SBRFの4つの商品と期間2015.01.01~24.10.2015で確認しました。