Mt4 サポート終了。 - ページ 31

 
Vladimir Pastushak:

4サイクルは、クールではありませんか?市場の概要で600文字で毎分ターミナルが死んでしまう....

何を言ってるんだ?タイマーは1分間に1回回転します。それはまったくないですね。

そして、ユーザーは好きなときにNew_bar()関数にアクセスする。

 
Alexey Viktorov:
コードコメントを見る限りではプログラムの中で、現在の期間だけ、一度に1文字だけ開くことを定義する必要がある場合はどうすればよいでしょうか。この全体の構成は、すべてのループを回転させるのでしょうか?非合理的でしょう。

コードを完全に誤解していた。

新しいシンボルバーのイベントは、1分間に1回ループして取り込まれます。自動的に現在の小節 数が配列に記録されている小節数と等しくない場合、配列Events_new_bar[][]に新しい小節イベントのフラグを設定する。

 

Alexey Viktorov:


ps; そして、なぜミリ秒タイマーを起動するのか?セカンドタイマーで十分ではないか?

秒タイマーを設定することもできます。次に、"Timer_frequency = 1000 "と記述します。

 

入れてテストしたら、動かない。

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(Новый_бар(Symbol(), PERIOD_M1)) Print("M1 = ",Time[0]);
   if(Новый_бар("EURUSD", PERIOD_M5)) Print("M5 = ",Time[0]);
  }
常に偽物を出す
 
Vladimir Pastushak:

4サイクルはクールだと思いませんか? マーケット概要の600文字では、1分ごとに端末が死んでしまいます・・・。

本当にそんなに持っている人がいるのだろうか?

私は16台ですが、すでに負荷がかかりすぎているのでは?

確かに、私はM15を最低のタイムフレームとしていますが...。それにしても、端末の負荷が致命的になるのはいつからなんでしょうね?

 
Реter Konow:

どういうことですか?タイマーは1分間に1回回転します。それはまったくないですね。

そして、New_bar()はユーザーが望むときにいつでも呼び出される。


通常、"new bar "関数は1ティック ごとに実行されます...このように1目盛りごとに呼び出すのは、リソースを節約するためです。あなたの機能がどのように資源を「節約」しているのか、それは資源を食いつぶしていることに気づいてください。

 
George Merts:
...それにしても、端末の負荷が致命的になるのはいつからなんでしょうね?

プロセッサが膝に入り、立ち上がれなくなったとき。

謹んで申し上げます。

 
Реter Konow:

コードを完全に誤解していた。

新しいシンボルバーのイベントは、1分間に1回ループして取り込まれます。自動的に現在のバーの数が 配列に記録されているものと等しくない場合、新しいバーイベントのフラグを配列Events_new_bar[][]に入れる。

もう一つ、OOPを使った例について説明しましょう。

トレーディング、自動売買システム、ストラテジーテスティングに関するフォーラム

Mt4 サポート終了。

アレクセイ・ビクトロフ さん 2017.09.11 13:08

OOPの 使い勝手の原始的な例を見つけたような気がします。ここでは、配列に指定された値を埋める関数を紹介します。アレイの種類によって8種類あります。

例えば、あるパラメータを渡す必要がある関数を書き、次に別のパラメータを渡し、さらに3番目のパラメータを渡す必要があるとします。アルゴリズムによるアプローチでは、N個の異なる関数名を得ることができます。ArrayInitializeInt()ArrayInitializeDouble() などの8つの関数を書いても問題ないように思えます。でも、配列の種類を考えずに、とにかく1つの関数を使えばいいし、どの配列を入れたら安全なのか...。


Документация по MQL5: Операции с массивами / ArrayInitialize
Документация по MQL5: Операции с массивами / ArrayInitialize
  • www.mql5.com
Операции с массивами / ArrayInitialize - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
Vitaly Muzichenko:

インストール、テスト、動作しない

常にfalseを出力します。

1.M1上でEAを実行します。

2.現在のバーが完全に完成するまで待つ必要がある。最初のバーでは、イベントが確定していません。わざとやったんです。次に、関数に送信するタイムフレームが示す時間だけ待つ必要があります。

分で試したところ、うまくいきました。

 
Dmitry Fedoseev:

通常、"new bar "関数は1ティック ごとに実行されます...このように1目盛りごとに呼び出すのは、リソースを節約するためです。あなたの機能がどのように資源を「節約」しているのか、それは資源を食いつぶしていることに気づいてください。

明らかにコードの読み方を知らない。))どこでガツガツやっているのか?