[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 644 1...637638639640641642643644645646647648649650651652 新しいコメント TarasBY 2012.03.19 17:05 #6431 Myth63: 問題は、私はMQLプログラミングがあまり得意ではなく、私のEAはBASICの原則に基づいていることです =)。未決済注文に変数が割り当てられる。ターミナルには再ログインしたと表示され、注文を開くとこの変数の値が消えます。注文が再ログインした場合はどうすればいいのでしょうか? この場合、ターミナルはオープンポジションをチェックし、その値をロボットによって割り当てられた変数に代入する必要があります。また、Expert Advisorはテストで良好な測定値を示しています。 何を保存したいか(どのような情報か)により、異なるオプションを使用することができます。 の場合、注文に関する情報をそのコメントに格納し、そのコメントから読み出すことができる。 必要な情報をファイルに 書き出すことができますが、その処理には時間がかかります。 最もよく使われるバリエーションは、ターミナルのグローバル変数に 書き込むことです。 TarasBY 2012.03.19 17:08 #6432 FelixFX: 差し支えなければ、こんな例もあります。私が理解する限り、ループが実行されるまでデータは更新されないのでしょうか?int start() { //---- while (!IsStopped() && IsExpertEnabled()) {fMineFunction();} //---- return (0); } FelixFX 2012.03.19 17:13 #6433 TarasBY: この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか? Alexey Subbotin 2012.03.19 17:16 #6434 Myth63: MQLのプログラミングが苦手なことと、私のEAはBacycaの原理に基づいていることです =)。未決済注文に変数が割り当てられる。ターミナルには再ログインしたと表示され、注文を開くとこの変数の値が消えます。オーバーログがあった場合にオープンポジションをチェックし、その値をロボットが設定した変数に代入するようにするにはどうしたらいいのでしょうかね。 マジックナンバーのことですか?情報が足りない...何が変数で、どう代入されているのか......そこから始めなければならない。 しかし、私のExpert Advisorはテストでは良い結果を示しています。 100トレードは読み物ではなく、歴史に残る良い作品だと思います。2~3年で数千件の取引は、信頼に足るものです。 Vadim Zhunko 2012.03.19 17:19 #6435 FelixFX: この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか? いや、アップデートされるためには、これ でなければならないのです。ループに関する質問は、サイト内検索エンジンが何ページ目を返すか、でお答えしています。読んでみてください。 TarasBY 2012.03.19 17:19 #6436 FelixFX: この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか? ループを使えば、次のティックが来るのを待たずに、関数を「ループ」して実行することができます。どのようなデータをお聞きになりたいのでしょうか? Иван 2012.03.19 19:51 #6437 手書きで書くのは簡単そうですが、コードの一部がティックで、一部がバーで実行されると、プログラムが非常に分かりにくくなります) どうもありがとうございました) --- 2012.03.19 20:06 #6438 Qwertee: ティックごとではなく、各バーが開くときに、自分で書いた関数を実行できるような組み込み関数があれば教えてください。 手書きで書くのは難しくないのですが、あるコードをティックごと、あるコードをバーごとに実行すると、非常に混乱します。) ありがとうございます。 ということで、新しいバーが開くタイミングを判断して、機能を実行するだけです。 新しいバーの出現は、そのバーの開始時刻を 記憶し、バー0の現在時刻と比較することで判断することができます。新しい時間が前の時間より長ければ、新しいバーができたことになります。 Иван 2012.03.19 22:01 #6439 sergeev アドバイスありがとうございます、うまくいきそうです) よし、もう1つ。 私のEAでは、このように分岐しています。 if(period=="M15") { //買いを開くかチェック Alert(buysell); if(buysell=="買う") アラート(1)です。 } 基本的にはネストされたif。しかし、if(period=="M15")の条件は満たされ、Alertは結果を出し、買いますが、if(buyell=="buy")の条件は満たされず、Alert(1)のコマンドも開始されません。 [Deleted] 2012.03.19 22:03 #6440 sergeev: ということで、新しいバーが開くタイミングを判断して、機能を実行するだけです。 新しいバーの出現は、そのバーの開始時刻を記憶し、バー0の現在時刻と比較することで判断することができます。新しい時間が前の時間より長ければ、新しいバーができたことになります。 書いておきます。 int time.marker; void start() { if(time.marker!=Time[0]) { time.marker=Time[0]; // тут то что буде исполнятся только на открытии бара } // тут то что буде исполнятся на каждом тике } 1...637638639640641642643644645646647648649650651652 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
問題は、私はMQLプログラミングがあまり得意ではなく、私のEAはBASICの原則に基づいていることです =)。未決済注文に変数が割り当てられる。ターミナルには再ログインしたと表示され、注文を開くとこの変数の値が消えます。注文が再ログインした場合はどうすればいいのでしょうか? この場合、ターミナルはオープンポジションをチェックし、その値をロボットによって割り当てられた変数に代入する必要があります。また、Expert Advisorはテストで良好な測定値を示しています。
何を保存したいか(どのような情報か)により、異なるオプションを使用することができます。
差し支えなければ、こんな例もあります。私が理解する限り、ループが実行されるまでデータは更新されないのでしょうか?
この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか?
MQLのプログラミングが苦手なことと、私のEAはBacycaの原理に基づいていることです =)。未決済注文に変数が割り当てられる。ターミナルには再ログインしたと表示され、注文を開くとこの変数の値が消えます。オーバーログがあった場合にオープンポジションをチェックし、その値をロボットが設定した変数に代入するようにするにはどうしたらいいのでしょうかね。
マジックナンバーのことですか?情報が足りない...何が変数で、どう代入されているのか......そこから始めなければならない。
しかし、私のExpert Advisorはテストでは良い結果を示しています。
この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか?
この際、同じデータしか使われないのでしょうか?新しいティックでデータが更新されるのか、されないのか?
ティックごとではなく、各バーが開くときに、自分で書いた関数を実行できるような組み込み関数があれば教えてください。 手書きで書くのは難しくないのですが、あるコードをティックごと、あるコードをバーごとに実行すると、非常に混乱します。) ありがとうございます。
ということで、新しいバーが開くタイミングを判断して、機能を実行するだけです。
新しいバーの出現は、そのバーの開始時刻を 記憶し、バー0の現在時刻と比較することで判断することができます。新しい時間が前の時間より長ければ、新しいバーができたことになります。
sergeev アドバイスありがとうございます、うまくいきそうです)
よし、もう1つ。
私のEAでは、このように分岐しています。
if(period=="M15")
{
//買いを開くかチェック
Alert(buysell);
if(buysell=="買う")
アラート(1)です。
}
基本的にはネストされたif。しかし、if(period=="M15")の条件は満たされ、Alertは結果を出し、買いますが、if(buyell=="buy")の条件は満たされず、Alert(1)のコマンドも開始されません。
ということで、新しいバーが開くタイミングを判断して、機能を実行するだけです。
新しいバーの出現は、そのバーの開始時刻を記憶し、バー0の現在時刻と比較することで判断することができます。新しい時間が前の時間より長ければ、新しいバーができたことになります。
書いておきます。