class tick{
public:
MqlTick data; //новые тиковые данныеbool refresh(); //метод обновления тиковых данных с проверкой на поступление новых данныхvoid write(); //запись тиковых данных в файл
.........
void tick::write(void){
if (file_handle>0)FileWrite(file_handle,data.bid);
}
ほとんどの場合、そうでしょう。私のコードの半分もタイマーに縛られているので、新しいビルドを待つか、松葉杖をつくかしなければなりません :(
その通りです。OnTimerをOnTickに変更したところ、すべてが以前と同じようになりましたが、コアによる最適化は同時ではなく、1つずつ実行されます。このような明らかな誤りは、開発者が すぐに修正してくれるようです(期待)。
このコードはタイマーを作動させません
でも、これはそうなんです。
その通りです。OnTimerをOnTickに変更したところ、すべてが以前と同じようになりましたが、コアによる最適化は同時ではなく、1つずつ実行されます。このような明らかな誤りは、開発者がすぐに修正してくれるようです(期待)。
私の場合、役に立たなかった。
何かクセがあるのでしょう。
Win 2003 Server SP2 x32(AMD2600+、1コア)で試しました。そして、それは「空の」Expert Advisorで行われたと言えるかもしれません。追加されたのは2つの変数と2つの関数(タイマーの状態を定義するものと最初のスタートをキャッチするもの)だけです。
コード10005はどこに行ってしまったのか、またその意味は?
リクオート(10004)と「リクエスト拒否」(10006)の中間のようなもの?
Championship 2010のディスカッションhttps://championship.mql5.com/2010/ru/users/capr で、ある参加者が自分のEAコードを投稿していました。コンパイルしてみました(ビルド355)。コンパイルの結果、いくつかの警告が表示されました。以下の断片に興味があります。コードの中にそのような断片があります。
同じ型の2つの構文のうち if(ticket= ...)の場合、コンパイラは最後の1つに対してのみ「式がbooleanでない」警告を生成します(つまり、以前の同様の警告を「隠す」のです)。警告の中のif文をコメントアウトすると(コンパイラのチェックのため!)、変更されていないが前回のコンパイル時にプロトコルに存在しなかった同様の構成に対して警告が発生するのです。
これは機能なのでしょうか、それともバグなのでしょうか?
エラー,MetaTrader 5 MQL,開設済み,開始: 2010.11.06 11:32,#25823
答えを教えてください
そのようになっているのかどうかわかりませんが、ファイルに書き込む ときに
正規化されていない価格が表示されることがあるのですが。
81.42
81.41
81.41
81.40000000000001
81.40000000000001
81.40000000000001
81.40000000000001
81.41
81.40000000000001
81.41
81.41
なんで
で、FileWriteStruct( file_handle,data, sizeof(data))を使用してファイルに書き込むことがなぜかできなかった。
で、FileWriteStruct( file_handle,data, sizeof(data))を使用しても何らかの理由でファイルに書き込むことができませんでした。
バイナリファイルに書き込む必要がある -https://www.mql5.com/ru/docs/files/filewritearray
FileWriteArray
文字列配列(文字列を含まない構造体の配列、動的配列でも可)を除く、任意の型の配列をBIN 型ファイルに書き込みます。
intFileWriteArray()
intfile_handle,//ファイルハンドル
voidarray[],// 配列
intstart_item=0,// 配列の初期インデックス.
intitems_count=WHOLE_ARRAY// 要素 数
);
例えば、(既存のレコードを上書きしないようにコードを更新する必要があります)。
バイナリファイルへの書き込みが必要です -https://www.mql5.com/ru/docs/files/filewritearray
例えば、(すでにあるレコードを上書きしないように、コードの改善が必要です)。
OK、どうもありがとうございます、テスト用にテキストファイルに書き込んでいただけなので、MqlTickが本質的にどのような構造なのか疑い始めていました :)
ZS: 悪くないですね。基本的には、私のクラスとコードを復元しました。)- MT5でオフラインのチャートを作成したくないというのは残念です - 私はMT4+MT5用に書いていますが、非標準のTFにはまってしまいました。