リニア減速はプログラミングエラーなのか、MT4の機能なのか? - ページ 6

 
sergeev:


時間の浪費をやめて、いよいよ開発に着手する必要がある。 ToRを作成する。

クライアントが求めているのは、単純な時間軸ではなく、解決策であるため。

すでに実行中)。
 
FAQ:

何度目かの経験者の説明で、このコードでは、start関数の1パスで

32 "for "サイクル

17回、注文をスキャンする(未決済と履歴の両方)。

保留中の注文を削除 する機能を24回呼び出し、全注文のサイクルも持つ(※注文数)

全注文が同じ周期で成行注文を削除する機能の7回分の呼び出し(※注文数分)

Limits with cycles insideの6種類のモディフィケーション(※受注数)

6 内側にサイクルを持つ逆指値注文の修正(※注文数)

サイクルを内包する10次関数呼び出し(*次数)

37回印刷する(Print)。

7(7)回、全履歴のバーにアクセスします(テスト中も増え続けています)。

しかも、かなり時間がかかる。

最適化されていない「if」フィルタ、その中の複雑な条件(MT4では省略可能なチェックもない)の話でもない。

そしてその後は、絶対に読めないコードに目をつぶればいいのです。それは重要ではなく、少なくともスタイラーに通して何かを得ることはできます(個人的にはそのスタイルが好きではありませんが)。

micle:
何度も言うようですが!まず、おそらく一番の問題は、コードが読めず、構造化されていないことです。かなり明確なToRがあるのではないでしょうか。ToRを理解し、正しくコードを書けば、(原則として)実行速度でかなりの利益が得られるが、それ以外のコストもかかる。

要するに、何が不必要に実行されているのかがわかる、いわゆるフローチャートが必要なのです。初心者のプログラマー(トレーダーと呼ぶ)にとって、MT4プログラムによってこのようなコードの可視化を見ることができれば便利です。

私が理解する最も単純な最適化は、注文を処理するコードを体系化することです。つまり、1バーにつき2つのメインリクエストのみを行い、さらに1ティックごとに、ToRの条件が特定の条件が発生したときに注文を処理する必要がある場合、結果として、私たちは以下を受け取ることになります。

1.新しいバーが開いたときに、注文を修正・決済する条件を確認する。

2. 注文の変更/クローズ

3.新しいバーが開かれたときの新規注文の条件確認

新しい注文を開く、4.

5.各ティックでバーアップの条件を確認する

6.条件5を満たした場合の注文の近代化・クローズ。

しかし、あるプログラマーが「どうせ1ティックごとにコードが実行されるのだから(注文の完全適合チェック、その部分だけでなく、1ティックごとにチェックすべき)、何とか解決できないか」と言ったのです。

関数「print」は、最適化の際にExpert Advisorの速度を低下させますか?

スタイラス」で実行した後、どのようなファイルを添付したのでしょうか?

 
スレッドの最初の投稿で投稿されたものです。
 

FAQ:
который вы выложили в первом посте темы. 

また、「コードはやはり毎ティック実行される(毎ティックで チェックすべき部分だけでなく、TORに対するフルチェック)」ということですが、それについてコメントをお願いします。

 
-Aleks-:

また、「コードはやはり毎ティック実行される(毎ティックでチェックすべき部分だけでなく、TORとの完全なコンプライアンスチェック)」については、どのようにコメントされていますか?

賢くやり直すんだ。そうすれば、すべてがあるべき時に、あるべきように動くようになります。
 
FAQ:
やり直すなら、賢くやり直さなければならない。そうすれば、すべてがあるべき時に、あるべきように動くようになります。

このコードの話ではなく、グローバルにです。では、この発言に反論するのですか?

 
-Aleks-:

このコードの話ではなく、グローバルにです。では、この発言に反論するのですか?

理屈はいらない、どうせ何もわからないのだから。

具体的なコードやアプリケーションを伴わない理論は、すべてナンセンスです。

反証や証明をしたいのであれば、コードを書いてみて、その挙動を確認してください。

 
sergeev:

理屈をこねるのはやめましょう。

具体的なコードやアプリケーションを伴わない理論は、すべて単なるおしゃべりに過ぎません。

反証や証明をしたいのであれば、コードを書いてみて、その挙動を確認してください。

理解できないことも多いだろうが、理解しようと努力はしている......。

コールトゥアクションを考える...

 
-Aleks-:

でも、それを理解しようとすると...。

MetaEditorを開いて、自分でコードを書き始めるまでは、その仕組みを理解することはできないでしょう。
また、小さな初心者プロジェクターでも、その実技と経験則で理論的な知識を圧倒してくれるでしょう。
もしあなたが「自分でコードを書く」つもりがないのなら - このフォーラムで何かがラグっている理由を聞いても、あなたには意味がないのですから、始めから聞かないでください。

それとも掲示板のアドバイスでプログラマーになろうと思ったのでしょうか?


プロサッカー選手/コーチ/外科医/言語聴覚士に理論派で実践経験のない人がいないのと同じように、プログラミングにも理論派は存在しない。

プログラムがうまくいかない原因を探る努力は、「知りたい」という平面ではなく、「やらなければならない」という具体的なベクトルの中にあるはずです。

それ以外の机上の空論も、具体的な行動なくしては一文の得にもなりません。


そして、ちょっとしたユーモアもポイントです。






 
sergeev:

MetaEditorを開き、自分でコードを書き始めるまでは、その仕組みを理解することはできないでしょう。
また、小さな初心者プロジェクターでも、その実技と経験則で理論的な知識を圧倒してくれるでしょう。
もしあなたが「自分でコードを書く」つもりがないのなら、フォーラムで「なぜラグがあるのか」なんて意味不明なことを聞くのはやめましょう。

それとも掲示板のアドバイスでコーディングのプロになろうと思ったのでしょうか? :)) 「リニアブレーキ」というトピック名から、どこかの理工系大学で勉強されたことがわかります。

プロサッカー選手/コーチ/外科医/言語聴覚士に理論派で実践経験のない人がいないのと同じように、プログラミングにも理論派は存在しない。

プログラムの失敗の原因を探る努力は、「知りたい」という平面ではなく、「やらなければならない」という特定のベクトルにあるはずです。

それ以外の偉そうな理屈は、具体的な行動なくして一文の得にもならない。

そして、ちょっとユーモラスな中身のある話題。

ユーモアをありがとうございました

でも、私の専門は税金の最適化なので、アルゴリズムには詳しいんですよ(笑)。私のTORは、もちろん詳細を明記した上で(私は絵を描いたり、エクセルで計算するようにしています)、理解できるものだと信じています。

また、MetaEditorを使いこなし、簡単なインジケータの作成やExpert Advisorのロジックを修正することも可能です。でも、トレーディング機能 には大きな問題が...。私はちょうど今、時間が限られており、自分が生まれながらのプログラマーだとは思っていませんが、注文を完了するために自分の利益を守るために、MQL言語の基礎と特徴を理解する必要があります。

それから、本当に気になります。

Документация по MQL5: Торговые функции
Документация по MQL5: Торговые функции
  • www.mql5.com
Торговые функции - Документация по MQL5