RE:I strongly do not recommend you running volume I on a live account balance! もちろん、選択するのはあなたですが、あなたの代わりに、I巻からII巻への進化が完了するまでは、ライブ口座で実行することを強くお勧めしません。第I巻はまだ開発中であり、完全にコード化されるまでは実行しない方がよいでしょう。私自身はライブ口座でテストしていないので、何が起こるかわかりません。私は、完成度の低さを理解し、ライブ口座でのテストを開始する前に、その本質的な要求を満たすことを選択しました。
ところで、Strategy Testerで あなたのEAを実行したところ、11GBものエラーのログファイルができてしまいました ... ... 例えば ... ...
23:08:49 2007.05.06 22:00 MMA_Breakout_strategy_volumeaIk_withouteMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: OrderModify error 1
23:08:49 2007.05.06 22:00 MMA_Breakout_strategy_volumeaIk_withouteMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: close #6 buy 0.01 EURUSD at 1.36028 sl: 1.31028 at price 1.35960
23:08:49 2007.05.06 22:01 MMA_Breakout_strategy_volumeaIk_withouteMjoreMF_u-rcodedmbywWhooDoo22 EURUSD,M30: OrderModify 関数の不明チケット6番です。
注文を選択する方法は複数あると思いますが、全ての注文の選択方法はOrderSelect()関数を使用する必要があります。とはいえ、ストラテジーテスターでは、EAが明らかにすべての注文に対してOrderClose()関数をエラーなく実行しているので、これが失敗する理由はわかりません。
orderCloseは明らかに機能していません。リターンコードをチェックして いれば、それがわかるはずです。orderSelectは動作していませんが、あなたはチェックしません。
もしIがチケット番号でないなら、あなたのorderSelectは失敗し、他のすべても失敗する。
もしIがチケット番号なら、次のチケット番号はi+1ではありません(テスターでは除く)。
サイモン
Liveのアカウントがあれば...。
RE:私は、ライブ口座の残高で ボリュームIを実行することを強くお勧めしません。もちろん、選択するのはあなたですが、あなたの代わりに、第1巻から第2巻への進化が完了するまでは、ライブ口座で実行することを強くお勧めしません。第I巻はまだ開発中であり、完全にコード化されるまでは実行しない方がよいでしょう。私自身はライブ口座でテストしていないので、何が起こるかわかりません。私は、その完成度の低さを理解し、ライブ口座でのテストを開始する前に、その本質的な要求を満たすことを選択しました。
ところで、、、。
RE: このエラーについて、何が起こっているのかすぐに理解できたと思うのですが・・・。このエラーは、"EMERGENCY SL" コードブロック内のエラーを反映しています。これはコード化するのがそれほど難しくないので、私は力を注いだことはありません。部分的にコーディングして、成熟を完了させなかったのです。EMERGENCY SL」のコードブロックは、重要なテーラリングが欠けています。SELLとBUYの両方の "EMERGENCY SL "コードブロックを完全に削除すれば、11ギガのエラーリストが表示されないと確信しています。そもそもなぜ11ギガなのかというと、テストされている歴史の中で何度も同じエラーが繰り返されていると思うからです。
ありがとうございました。
ウィリアムです。
私は、Simonほどあなたとコードについて議論した歴史はありませんが、あなたの投稿に前進したいと思います(あなたの投稿に感謝します!それは歓迎されます)。
Volume I/IIに望むことは何ですか?
私は厳格にテストを実行し、その取引価値を保証するために、テストに不可欠なコードを追加しています。その後、LIVE/DEMOでの安全な取引を保証するために、残っているコードの問題を微調整するつもりです。
ありがとうございました。
もし私が以前取引したことのあるライブ口座を持っていて、現在ライブ注文がない場合、その口座でEURUSD M30であなたのEAを実行したらどうなりますか? それは取引を行うのでしょうか?
サイモン
もし私がライブ口座を持っていたら...
RE:I strongly do not recommend you running volume I on a live account balance! もちろん、選択するのはあなたですが、あなたの代わりに、I巻からII巻への進化が完了するまでは、ライブ口座で実行することを強くお勧めしません。第I巻はまだ開発中であり、完全にコード化されるまでは実行しない方がよいでしょう。私自身はライブ口座でテストしていないので、何が起こるかわかりません。私は、完成度の低さを理解し、ライブ口座でのテストを開始する前に、その本質的な要求を満たすことを選択しました。
私が作ろうとし、あなたに見てもらうようにしたポイントは、もし口座の履歴があれば、あなたのコードのこれらの行が取られるどんな取引も防ぐということです ... ...
このため、履歴に古い注文があると、EAが取引を行うことはありません。
Simonさん。
私が言いたかったのは...
RE:理解しました。あなたはそれがユニークなチケット変数を検索するOrderSelect()関数を 使用することが可能であると信じていますか、次に "if(OrdersHistoryTotal()==0){"を含むコードブロックが横たわっているでしょう。これは、OrderSelect()関数がユニークチケット変数「ticket」を選択し、OrdersHistoryTotal()関数がユニークチケット変数の取引履歴のみを検索しているため、動作しないのではないでしょうか?if文」は、特定の変数であるユニークチケット変数の履歴の注文のみを検索しているのです。
ありがとうございます。
Simonです。
私が言いたかったのは...
RE:理解しました。OrderSelect()関数を使用して、ユニークなチケット変数を検索することが可能であると思いますか?これは、OrdersHistoryTotal()関数が、ユニークなチケット変数の過去の取引のみを検索しているため、動作しないのでしょうか?if文」は、特定の変数、ユニークなチケット変数の履歴の中の注文だけを検索しています。
ありがとうございました。
"ターミナルに読み込まれた口座履歴の中で、クローズした注文の数を返します。履歴リストのサイズは、ターミナルの "アカウント履歴" タブの現在の設定に依存します。
これは、チケット番号やチケット変数、マジックナンバーなどとは何の関係もありません ... それは、履歴プール内の取引の合計 数を返します ... 唯一の制限要因は、あなたが口座履歴タブで表示するように選択したものです ...すべての履歴、過去3ヶ月、過去1ヶ月、またはカスタム期間。
サイモン
あなたは少し混乱していると思います ... ...
RE: Volume II は、条件に基づいて注文の送信処理を開始する必要があります。 最初の注文が(条件に基づいて)送信されると、OrderClose()関数が 今後のすべての取引を実行するのをブロックします。これをサイクルとして考えてみてください。条件に基づいてボールを転がし、最初の注文(ボールローラー注文)が閉じられたら、サイクルが開始されます。このサイクルは、将来の条件が満たされるまで、数字を計算し、アクティブな条件をチェックし続けます。
ありがとうございました。