ベータ版530での配列リサイズの不具合 - ページ 4

 
SDC:

すでにMQL5でコーディングされているのでしょうか?

はい、そうです。なぜですか?
 
angevoyageur: そうですね、難しい移行になると思います。しかし、初心者ではなく、まだmql5を知らないmql4の経験豊富なコーダーにとっては、難しいことだと思います。一般的に、初心者はドキュメントを読みません。

今回、私はあなたに同意します.mql4の学習に時間を費やした人のほとんどは、新しい構文を再学習することを恐れるでしょう。

mql4はmql5よりもレベルが多くなっています(想像してみてください)。

  • mql4_non_oop 構文があります。
  • mql5_non_oop構文があります。
  • mql5_object_oriented syntaxがあります。

良いニュースは、知らないものを使う必要がないことです。私は、metaQuotesがmql4_programmerにmql5とOOPを簡単に教える方法が好きです。

metaTraderファンにとって、この言語はおそらく未来の言語なので、早くそれを乗り越えたほうがいいと思います。

 
SDC: 新しいバージョンがリリースされると、新しいmql4のドキュメントがmql5のコーディングに基づいているため、初心者のためのフォーラムで多くの混乱を引き起こすと思います。つまり、このフォーラムやコードベースに記述されていることの多くが、mql4のドキュメントと矛盾することになります。新しいmql4ドキュメントからインジケータバッファをセットアップする。(これは実際にはエラーがあり、コンパイルできません)
mql5.comのようなことになると思います。初心者の中には、使用しているスタイルによって、フォーラムでコーディングのヘルプを受けられない人もいます。例: もし彼らが使っているスタイルが mql5_oop ならば、ほとんどの回答は mql5_docs を指すでしょう。しかし、もし彼らがmql4_codesを投稿すれば、実際のコードを読むことができる多くの人がいることでしょう。
 
ubzen:

私は今回、あなたに同意します。mql4の学習に時間を費やした人のほとんどは、新しい構文を再学習することを恐れるでしょう。

mql4はmql5よりもレベルが多くなっています(想像してみてください)。

  • mql4_non_oopの構文があります。
  • mql5_non_oop構文があります。
  • mql5_object_oriented syntaxがあります。

良いニュースは、知らないものを使う必要が ないことです。私は、metaQuotesがmql4_programmerをmql5とOOPに移行させる理由が好きです。

metaTraderのファンにとって、この言語はおそらく未来の言語です;だから、早くそれを乗り越えた方が良いのです......私の意見ですが。

おっしゃるとおりですが、むしろ「必要ないものは使わなくていい」と言いたいです。
 
ubzen:

良いニュースは、知らないものを使う必要がないことです。私は、metaQuotesがmql4_programmerをmql5とOOPに導いてくれるのが好きです。

metaTraderファンにとって、 この言語はおそらく未来の言語なので、早くそれを乗り越えた ほうがいいと思います。

私はそれに同意し、それは私が把握することを先延ばしにしているものです... ...しかし、あまり長くはありません、誰かがOOPの背後にある原理への良い紹介に遭遇した場合、私にPMしてください。


私の最大の懸念は、それが必要な時間と注意を与えられるよりもむしろ後回しにされないことを望むドキュメントです。

 
angevoyageur:
はい。なぜですか?

mql5を学ぶことは努力に値すると思いますか?古いmql4ではできなかったと思うことをmql5で達成したことがありますか?また、あなたはOOPプログラマーの経験がありますか?

あなたは正しいです......それは難しい移行になります......私は今まで、このすべての新しいものを学ぶための時間を持っていることを知らないよ。

また、このコーディング例がなぜコンパイルできないのか不思議なのですが、ENUMはあらかじめ定義された定数なのでしょうか?

最初のエラーは 'ENUM_APPLIED_PRICE' - 型のない宣言 TestCopyBuffer1.mq4 23 7...

 
RaptorUK:

もし誰かが、OOPの背後にある原理について何か良い入門書を見つけたら、私にPMをください。


私の最大の懸念は文書化で、必要な時間と注意が与えられるのではなく、後回しにされないことを望みます......私の懸念が杞憂であることを祈ります。

私もそう思います。しかし、oopがどの程度まで本当に必要なのかはわかりません。oopは機能や能力よりも、プログラムの構造に関するものだということに、他の人は同意するでしょうか?それとも、mql5の機能を最大限に活用するためには、本当にoopを考えなければならないのでしょうか?

 

新しいベータ版を試してみたいけど、スレーディングのために509も残しておきたい人のためのヒントがあります。他の人は、1つの端末をベータ版にアップグレードすると、ライブアップデートが他の端末もアップグレードすると言っています。私は、UACが私のメイン取引端末を自動ライブ・アップデートによる干渉から守ってくれていることに気付いたので、そのようなことは起こりませんでした。

そこで、509をプログラムファイルにインストールし、UACをオンにすればいいのです。それがあなたのメインの取引端末になります。

別の509を別のフォルダにインストールします。Program Filesでも構いませんが、私はProgramFiles/MetaTraderBeta/を使いました。この端末をMT4テストサーバーに接続し、ベータ版530にアップグレードさせます。

ベータ版を終了して、トレーディングターミナル509を開くと、UACが「プログラムの続行には許可が必要です」と通知します。それがliveupdateです。許可を与えないと、ターミナルは通常通りロードされ、バージョン509のままになります。これは、509を再起動するたびに発生します。

 
SDC:

mql5を学ぶことは努力に値すると思いますか?古いmql4ではできなかったと思うことをmql5で達成したことがありますか?また、あなたはOOPプログラマーの経験がありますか?

あなたは正しいです......それは難しい移行になります......私は今まで、このすべての新しいものを学ぶための時間を持っていることを知らないよ。

また、このコーディング例がなぜコンパイルできないのか不思議なのですが、ENUMはあらかじめ定義された定数なのでしょうか?

最初のエラーは 'ENUM_APPLIED_PRICE' - 型のない宣言 TestCopyBuffer1.mq4 23 7...

私はプロのプログラマーなので、おそらく良い例ではありません。私はプロのプログラマーなので、これは私にとって大きな努力ではありませんし、新しいプログラミング言語を学ぶのが好きなのです。oopの経験もあります。

mql4プログラマーの多くはプロのプログラマーではなく、お金を稼ぐために取引を自動化する可能性を持つためにmql4を学んだのだと思います。mql5はより構造化されており、より寛容では ありません。例えば、iCustomの使い方です。mql4では、与えられたキャンドルのバッファの値を得るために、必要なパラメータを付けてiCustomを1回呼び出す必要がありました。mql5では、まずiCustomを使ってインジケータのハンドルを取得し、次にCopyBuffer関数を使って データ(1コールで1値または10000値)を取得するという2ステップで作業しなければならない。mql4ではiCustomを使って1つの値を取得するのが素人にもわかりやすいが、mql5ではハンドルの概念を理解した上で、CopyBuffer関数をマスターしなければならない。より困難。しかし、インジケータのバッファから3、4、10、あるいは1000の値を取得する必要がある場合は、より効率的です。

例えば、mql4でWindowsのDLL(postMessage...)を使う必要があったことのほとんどが、mql5で直接できるようになっています。oopを使う必要はなく、すべての機能が手続き的な方法で利用できます。

結論から言うと、ウープを気にする必要はありません。私見ですが、一歩一歩進むのが一番だと思います。今まで使っていたものが、マイナーチェンジして使えるようになるのです。新しい問題に対する解決策が必要になったとき、新しい可能性が解決策を提供してくれるかどうか見てみましょう。


 
SDC:<br/> translate="no">

新しいベータ版を試してみたいけど、スレーディングのために509も残しておきたい人のためのヒントがあります。他の人は、1つの端末をベータ版にアップグレードすると、ライブアップデートが他の端末もアップグレードすると言っています。私は、UACが私のメイン取引端末を自動ライブ・アップデートによる干渉から守ってくれていることに気付いたので、そのようなことは起こりませんでした。

そこで、509をプログラムファイルにインストールし、UACをオンにすればいいのです。それがあなたのメインの取引端末になります。

別の509を別のフォルダにインストールします。Program Filesでも構いませんが、私はProgramFiles/MetaTraderBeta/を使いました。この端末をMT4テストサーバーに接続し、ベータ版530にアップグレードさせます。

ベータ版を終了して、トレーディングターミナル509を開くと、UACが「プログラムの続行には許可が必要です」と通知します。それがliveupdateです。許可を与えないと、ターミナルはその後正常にロードされ、バージョン509のままになります。

ベータ版については、気長に待ちましょう。Metaquotesは、現在のバージョンはまだ大規模なテストのための準備ができていないので、それについての彼のトピックを削除 します。

もし、テストを行い、他の端末のアップデートを回避したい場合は、以下のフォルダを削除する必要があります。

  • Windows 7の場合。C:\ Windows 7 : C: ¦ProgramData ¦MetaQuotes ¦WebInstal 更新が成功すると、テスト端末から他の端末に更新されなくなります。
  • Windows XP : C: ♪Documents and Settings ♪All Users ♪Application Data ♪MetaQuotes ♪WebInstall ♪を削除してください。