ライブ口座でのMetaTrader 5のご利用について - ページ 6

 

Urain:

もっと複雑なものはともかく、グローバルに宣言された変数を関数に渡すことは単純に不可能です。

ああ、残酷なバグだ...

この方法で確認したところ、うまくいきました。

int a[10]; int count=10;
は、カウントを配列として扱います :)))
 
sergeev:

ああ、残酷なバグだ...

このように確認したところ、動作しています。

カウントを配列とみなす :)))


エラーがあるのは仕方がないことです。ポイントは、安定化した部分にあることです。すなわちシンタックスにおいてです。

もうひとつの例をご紹介しましょう。

void OnStart()
  {   
   int f[3];int g[3];
   for(int j=0;j<3;j++){f[j]=g[j]=123;}
  }

コンパイルは正常に行われますが、起動時に: Access violation read to 0x00000000 in 'С:\MetaTrader 5MQL5㏌Sheet4.ex5' が発生します。

でも、この式を書き換えるだけでいいんです。

f[j]=g[j]=123;

このように.

g[j]=123;
f[j]=g[j];

で、問題ありません。

つまり、この段階でのプログラミングは、やはりアルゴリズムを作ることではなく、なぜうまくいかないのかを探すことに帰結するのです。

 
f[j]=g[j]=123;

は可能でしょうか?

実は、このように動作させた方が、かえって早いのです。

g[j]=123;
f[j]=g[j];

という感じなのですが、一応。

g[j]=123;
f[j]=123;

あなたの場合、3回配列にアクセスしていますが、私の場合は2回だけです。:)

 

Urainさん、どうもありがとうございました。

なぜかわからないが7行も動こうとしない関数の断片があった。デバッグすることがないので、無期限で先送りしていますすべてがうまくいくこと。そして、あなたのメッセージに出会いました。明らかに、すべてが一度に動いた。


 
Urain:
...
メッセージをありがとうございました。エラーを修正しました。
 
mql5:
投稿ありがとうございます!エラーは修正されました。

実はこのスレッドはバグのためのものではなく、例として投稿したものです。

新しいビルドでは、安定化した部分が(小さなことでも)壊れることが多いので、ご注意ください。

どうやら問題はコードの最適 化にあるようです。最適化システムがわからないと、推測するしかないですね。

しかし、私の経験から、計画なしに構築されたシステムは、後で更新するのが非常に困難であることを知っています。

mql5の開発計画では、バグの体系化、弱点の把握が必要だと思います。

 
FINAMが MT5についてどう考えているか、どなたかご存知ですか?
 
gisip:

すごいですね、ストラテジーテスターに可視化はないし、みんなAPIを気にしているんですね。

特に最初の4点でしょうか:)



プラットフォームを普及させるための一連の行動について、開発者よりもよく知っていると考えるのは間違っていると思います

イェデルキン

個人的には、「攻略テスターの可視化不足」は、この獣に出会ったことがないので、気にならないのですが。

しかし、ブローカーがMT5を導入するのが遅れた理由については、多くの人が関心を持っています。その理由がAPIがないことであれば、APIについても気になる人が出てくると考えるのが自然でしょう。

その通り! +1ビジュアライゼーションは、今一番必要なものではない...。

 
YuraZ:

プラットフォームを普及させるための一連の行動について、開発者よりもよく知っていると考えるのは間違っていると思います


+1
 

単純な質問の後に、なんという感情の波動!?そして、トレーダーは自分の感情をコントロールしなければならないと言われています)