tag:blogger.com,1999:blog-3764781492495559537.post2490016279952953842..comments2023-12-04T02:31:40.115+09:00Comments on ■ FXシステムトレード奮闘記: MT4用EA開発時代 - 警告メールの嵐対応(OrderSelect等)ahahaFxhttp://www.blogger.com/profile/12925100687041373057noreply@blogger.comBlogger7125tag:blogger.com,1999:blog-3764781492495559537.post-42798051661930591232013-05-07T18:21:25.315+09:002013-05-07T18:21:25.315+09:00kartz様
どうもです!
> 続編の記事を拝見しました。
長文読んで頂いて、あり...kartz様 <br /><br />どうもです! <br /><br />> 続編の記事を拝見しました。 <br /><br />長文読んで頂いて、ありがとうございます! <br /><br />> <br />> 個人的には、OrderSelect() の仮説に対処するためだけにここまでするなら、EA の数だけ MT4 を起動した方がスマートかなと思いました (笑)。 <br />> うちの運用では仮説を支持する事例が見つかっていないので、そう思うのでしょうが。 <br /><br />仮説を「是」とした場合の対処方法は、好みの世界ですね~ <br /><br />私の場合は、以前のMT4構成のブログ記事の通り、ただでさえMT4のインストール数が多いので、 <br />「複数種類のEA×複数通貨ペア」という最終形(夢?)になると、構成管理が面倒になって、 <ahahaFxhttps://www.blogger.com/profile/12925100687041373057noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-26068958416245764152013-05-07T18:20:45.850+09:002013-05-07T18:20:45.850+09:00こんばんは。
続編の記事を拝見しました。
個人的には、OrderSelect() の仮説に対...こんばんは。 <br /><br />続編の記事を拝見しました。 <br /><br />個人的には、OrderSelect() の仮説に対処するためだけにここまでするなら、EA の数だけ MT4 を起動した方がスマートかなと思いました (笑)。 <br />うちの運用では仮説を支持する事例が見つかっていないので、そう思うのでしょうが。 <br /><br />【旧ブログから転記】<br />※ このコメントは、旧ブログで頂いたコメントを、ブログ筆者が転記したものです。<br />kartz 【旧ブログから転記】noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-83854791276483701762013-05-07T18:20:07.015+09:002013-05-07T18:20:07.015+09:00kartz様
> ??… ですから "GlobalVariable" ...kartz様 <br /><br />> ??… ですから "GlobalVariable" を mutex (0/1-semaphore) として使うんでしょう。。。 <br />> # GlobalVariableSetOnCondition() はそれが可能な唯一の MQL API であって。 <br />> <br /><br />あ、そうですそうです! <br />#「グローバル変数」を思いっきり、C言語でいうスコープがグローバルなメモリ変数と読み違えてました。。 <br />#命名がややこしい。。 <br /><br />ちなみに、もうこの部分の記事投稿しちゃいました。 <br /><br />> > 残念ながら、OrderSelect()の戻り値チェックはしていて、TRUEの時だけ、 <br />> > ahahaFxhttps://www.blogger.com/profile/12925100687041373057noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-5259268264746232452013-05-07T18:19:26.553+09:002013-05-07T18:19:26.553+09:00おはようございます。
> さすがに、グローバル変数はmutexとして使えないので、「Glo...おはようございます。 <br /><br />> さすがに、グローバル変数はmutexとして使えないので、「GlobalVariableSetOnCondition」 <br />> を使うという記事です。 <br /><br />??… ですから "GlobalVariable" を mutex (0/1-semaphore) として使うんでしょう。。。 <br /># GlobalVariableSetOnCondition() はそれが可能な唯一の MQL API であって。 <br /><br />trade context busy の回避策としてグローバル変数を (mutex として) 使うのは周知のテクニックなので (例えば、下記 URL 参照)、それと同様に start() の排他制御をするのだろうと。 <br />http://kartz 【旧ブログから転記】noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-76301899599334824682013-05-07T18:18:22.048+09:002013-05-07T18:18:22.048+09:00kartz様
続きです。
> > 仮説としては、OrderSelectした後に情...kartz様 <br /><br />続きです。 <br /><br />> > 仮説としては、OrderSelectした後に情報取得する関数(OrderTicket()とか)が返却する内容は、1つのMT4あたり、1つだけ。 <br />> > 例え複数のチャートでEAが同時に動作していたとしても。 <br />> <br />> これが正しければ世界中で悲劇が起こっていると思いますが (^^;)、たまに見掛ける下記の重篤なミスではないですよね? <br />> <br />> どこがミスかというと、OrderSelect() の戻り値を見ずに OrderSymbol() 等を使っているところですが。 <br />> <br />> 戻り値が false の場合 (つまり、建玉内容の変更などの例外処理が起きた場合)、ahahaFxhttps://www.blogger.com/profile/12925100687041373057noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-45245622506230883442013-05-07T18:17:59.022+09:002013-05-07T18:17:59.022+09:00kartz様
いつもどうもです!
> こんばんは。次回はグローバル変数を mutex ...kartz様 <br /><br />いつもどうもです! <br /><br />> こんばんは。次回はグローバル変数を mutex として使う記事でしょうか (笑)。 <br /><br />さすがに、グローバル変数はmutexとして使えないので、「GlobalVariableSetOnCondition」 <br />を使うという記事です。ネタばれですが(笑) <br /><br /><br />> > 【「1.ERR_TRADE_DISABLEDが1分強大量発生」】 <br />> > 「トレードが無効」って何?? <br />> <br />> 日本時間の朝6時ごろなら、ニューヨーク引け時刻 (17:00 ET) 前後の、いわゆる締め処理のため、(一時的に)取引できませんということだと思います。気配値ウインドのシンボルが灰色に変わるはずahahaFxhttps://www.blogger.com/profile/12925100687041373057noreply@blogger.comtag:blogger.com,1999:blog-3764781492495559537.post-17959506713226681372013-05-07T18:17:25.359+09:002013-05-07T18:17:25.359+09:00こんばんは。次回はグローバル変数を mutex として使う記事でしょうか (笑)。
> 【...こんばんは。次回はグローバル変数を mutex として使う記事でしょうか (笑)。 <br /><br />> 【「1.ERR_TRADE_DISABLEDが1分強大量発生」】 <br />> 「トレードが無効」って何?? <br /><br />日本時間の朝6時ごろなら、ニューヨーク引け時刻 (17:00 ET) 前後の、いわゆる締め処理のため、(一時的に)取引できませんということだと思います。気配値ウインドのシンボルが灰色に変わるはずです。DISABLED にせずに、その時刻帯の注文をはねるブローカの方が多いのですが。 <br /><br />> 仮説としては、OrderSelectした後に情報取得する関数(OrderTicket()とか)が返却する内容は、1つのMT4あたり、1つだけ。 <br />> 例え複数のチャートでEAが同時に動作していたとしても。 kartz 【旧ブログから転記】noreply@blogger.com