ヘルプが必要 - ページ 4

 
a007 #:

人類の未来は、その答えにかかっているのです。

1.EAのアイデアはどこから来たのか(誰が提案したのか、どこで読んだのか、...)?

2.1つのウィンドウでだけ動作し、2つ目の ウィンドウでは開かないというのは、どのような兆候なのか(どのように動作して いるのか、どのように理解すればいいのか)。

3.なぜもう1つ窓をつけるのか、なぜ1つの窓では不十分なのか。

1。テスト中に、私はまだ1つだけ言うことができる、私は長い間、ネットワーク上のヒントを見つけ、この方向に行きましたが、何かが欠けていたことを感じた)、そして最後に私が必要とするすべての答えを与えたネットワーク上の一つの興味深いものを見た)、私はアイデアを知っているの本質についての多くを考えると、おそらく誰かが既にこのアルゴリズムを使用して切断キャベツです...I don't know )、表面上はそうなんですが、オープンソースで似たようなものを長年見たことがないので、膝を折ってテストしています.私はエクセルを使い、その中に引用をねじ込み、数式や計算を詰め込み、今もそのようにやっています、4日間報告のために状態を固定していません、私は表を固定しましたが、5日間再投資をしない利益は1日平均30%、マーチンではなく、最適化、指標なし、私はどのブローカーでもいい、ドローダウンが観察できなかった、反転は遅く、正しい方向に開きやすく、今日の利益も30%の範囲内です。テスト用のフクロウの完成にご協力いただければ、テスト期間中のMT4からのレポートを掲載させていただきます。
2.はい、兆候は単純で、まず、1つのウィンドウにフクロウを置く、すべてが動作し、その後、ウィンドウに、2番目のウィンドウにそれを置くが、何も起こらない、注文が開かない表示されます。
3.今のところ、私は次の方法を使用する必要があります:エントリーのための信号は、入力パラメータで必要なペアのリストを選択し、方向を示し、チャートウィンドウでそれを開き、ルールに従って、例えば、6信号とそれぞれの信号のための開口部の異なるリストがあるでしょう、このケースでは第二、第三フクロウがスローされるべきである...。を別ウィンドウで表示し、リストから異なるスコープを6順番に連続的に開くことができます。
1つのウィンドウですべてを開くには、6つの注文を順番に開くためのシグナルを出すアルゴリズムのすべての数学を追加する必要がありますが、それは個々のプログラマーの仕事のための別のトピックです。
この段階では、私は次のように解決策を参照してください、あなたがより良い何かを示唆している場合、私は気にしない、テストの肯定的な結果の場合には(できればMTで)それはすでに本格的な自動機を作成する意味と関心を作るだろう、すべてがはるかに良い行っている間、そして我々は表示されます。

 
Sergey Korsunov #:


でも、コンパイル時に警告が出るのですが、どういう意味でしょうか? また、どうすれば削除できるのでしょうか?

MQL4におけるOrderSend

トレードサーバーが注文に割り当てたチケット番号、または失敗した場合は -1 を返します。 エラーの情報を得る には、 GetLastError() 関数を呼び出す必要があります。


しかし、返された値は無に帰す。もちろん、決定的なものではありませんが、最適なプログラミングスタイルとは言えません。

F1はあなたの助けになります、また、小さな例もあります。

 
今のところ、私のコードで必要な結果が得られていますが、これはあなたの助けを得て変更しました。
エキスパートアドバイザーは、新しいウィンドウで必要なシンボルリストを開くようになりました。
明日、私は全体のコードを修正する必要があります、それは小さなものではありませんし、それは一種の乱雑です)、それは動作するようです)、私は経験と知識を持っていません。
 
Sergey Korsunov #:
今のところ、自分のコードで必要な結果が得られていますが、先生の助けを借りて変更しました。エキスパートアドバイザーは、新しいウィンドウで必要なシンボルリストを開くようになりました。 明日、私は全体のコードを修正する必要があります、それは小さなものではありませんし、それは一種の乱雑です)、それは動作しますが)、私は十分な経験と知識を持っていません。

短いコードの書き方を直に学ぶ必要があります。あなたのバージョンと私のバージョンを比べてみてください。

余計な関数や括弧を捨て、繰り返しのある部分は関数で整理する。

プログラムテキストの半分を3段でコメントすること。

1.プログラム全体が明確で、完全で、冗長性がない。

2.プログラムの特定の部分へ:関数、ループ、...。

3.個々のオペレーターに

 
a007 #:

短いコードの書き方を直に学ぶ必要があります。あなたのバージョンと私のバージョンを比べてみてください。

不要な関数や括弧を捨て、繰り返しのある部分は関数で整理する。

プログラムテキストの半分を3段でコメントすること。

1.プログラム全体が明確で、完全で、冗長性がない。

2.プログラムの特定の部分へ:関数、ループ、...。

3.個々のオペレーターに

I am just at the very beginning, just starting )
私のオリジナル版は8000行以上ありました O_o ))
昨日の修正後、コードはちょうど2倍に減りましたが、あなたのものと比べてもとても、とてもです。
昨日は丸一日かけて書き直しました。
もし、私が始めたことを終わらせるのに協力してくれるなら、とても感謝します。

今日はこの作戦でボットが活躍しました。
私の主な仕事は、正しい順序で注文を開くことだけですが、それはうまくいっています。
私は今日めちゃくちゃにした唯一のことは、デフォルトのロットのサイズに注意を払っていない、0.01のロットで開口部のすべてであり、ちょうど不注意、設定する1.0をたくさん持っていたが、それは確かに1ロットを再起動することができ、そのあまりにも怠惰)

今日の取引の結果 strategiki (1ロット) +50%!
この記事を書いている間に、Excelで65%以上のPROFITを得ることができました)

ファイル:
Screenshot_7.jpg  421 kb
 
a007 #:

........................... 繰り返し使用する部品を機能化する。


これはまさにコードに欠けているものですが、どうすればいいのかわかりません
私のコードはすべて繰り返しで構成されています。

 
Sergey Korsunov #:
EAが新しいウィンドウで必要な機器のリストを開くようになった。

新しいウィンドウとは? Windowsでは、それぞれのウィンドウで異なるプログラムが実行されています。多くの端末を運用しているのですか?なぜ新しい窓が必要なのですか?

EAは1つのチャートで動作する必要があります。サーバーに命令を送らなければならない。どのウィンドウでリストを開くのですか?

 
a007 #:

新しいウィンドウとは? Windowsでは、それぞれのウィンドウで異なるプログラムが実行されています。多くの端末を走らせたのでしょうか?なぜ新しい窓が必要なのですか?

EAは1つのチャートで動作する必要があります。サーバーに命令を送らなければならない。どのウィンドウでリストを開くのですか?


で説明してみます。 この段階では、ボットはストラテジーテストの際に一定のルールに従って注文を出すためだけに必要です。
端末は1台だけです。
新しいウィンドウは、周期的に新しい注文を開くためにのみ必要です。

最初のウィンドウでボットを起動すると、リストを考慮して異なるシンボルで6つの注文が開かれます。
次の6つの注文のリストを2番目のウィンドウで開くのですが、Input Parametersウィンドウの設定などが少し変わっています。
窓の注文がすべて開かれた後、すべてのボットを削除し、すべてのポジションを閉じる追加ボットによって利益が確定した後、ボットが再びそれらを開くことがないようにします。
もちろん、1つのウィンドウで作業して、新しい注文が入ったらその都度botを削除すればいいのですが、面倒くさいので、今のところ6ウィンドウで十分です(笑)。
もしご興味があれば、コードの動作部分をお見せすることができます。
新規注文を出す際には、2つのパラメータを設定し、必要に応じて3つ目のパラメータ(取引の方向が買いか売りか)を設定する必要があります。
今のところ、ボットはちゃんと仕事をしています。時々、注文を開くときに少し遅くなりますが、それは単にコードが長すぎるせいだと思います)。
楽器のリストを含むテキストファイルによるバリエーションは、コードを大幅に簡素化し、その作業を大幅にスピードアップすることができます。


 
Sergey Korsunov #:

端末は1つだけです。
新しいウィンドウは、周期的な順序で新しい注文を開くためにのみ必要です。
最初のウィンドウでボットを起動すると、次のような画面が表示されます。

了解しました。ウィンドウとチャートを混同している。ターミナルはWindowsのアプリケーションです。各アプリケーションは、それぞれ独立したウィンドウで動作します。端末が同じなので、ウィンドウも同じになります。

違うウィンドウでロボットを起動し、待機し、閉じる...。無駄な時間を過ごしてしまう。

ロボットは一つで、すべての作業を一度に行わなければならない。そして、実際の100ドルと2週間のテストに。

もし、負けるようなことがあれば、それはそれで仕方がない。満タンになったら-デポジットを補充してください。

 
Sergey Korsunov #:


この段階では、ストラテジーテストの際に一定のルールに従って注文を出すためだけにボットが必要です。
端末は1つだけです。
新しいウィンドウは、周期的に新しい注文を開くためにのみ必要です。

最初のウィンドウでボットを起動すると、リストを考慮して異なるシンボルで6つの注文が開かれます。
次の6つの注文のリストを2番目のウィンドウで開くのですが、Input Parametersウィンドウの設定などが少し違っています。
窓の注文がすべて開かれた後、すべてのボットを削除し、すべてのポジションを閉じる追加ボットによって利益が確定した後、ボットが再びそれらを開くことがないようにします。
もちろん、1つのウィンドウで作業して、新しい注文が入ったらその都度botを削除すればいいのですが、面倒くさいので、今のところ6ウィンドウで十分です(笑)。
もしご興味があれば、コードの動作部分をお見せすることができます。
新規注文を出す際には、2つのパラメータを設定し、必要に応じて3つ目のパラメータ(取引の方向が買いか売りか)を設定する必要があります。
今のところ、ボットはちゃんと仕事をしています。時々、注文を開くときに少し遅くなりますが、それは単にコードが長すぎるせいだと思います)。
シンボルリストのテキストファイルのオプションは、コードを簡素化し、その作業を大幅にスピードアップさせるでしょう。


2つ目のリストと設定は、1つ目のオーダーに依存するのか、それともすべてのリストと設定が事前に分かっているのか?動作しているところを見てもらいたい。2つ目のリスト/セットの注文に対して設定を変更する必要があると書かれていますが、何に依存しているのかが明記されていません。