MQL5への願い - ページ 16

 
MQL5に関するご意見・ご感想をお聞かせください。

MQL5の開発は本格化しており、新しい取引プラットフォームの重要な機能の1つです。今は心の平穏を保つために、あえて議論に参加しないようにしています。しかし、しばらくすれば、新しい言語やライブラリ、プログラミング環境に関する情報の公開を開始する予定です。
 
Renat:
MQL5に関するご意見・ご感想をお聞かせください。
言語だけですか、それとも端末を使ったエディターもですか?
 
komposter:
レナート
MQL5への想いをお聞かせください。
言語に対してだけなのか、それとも端末を持つエディターに対してもなのか。
言語とエディターについて。端末へ - それは別スレッドで。とりあえず、MQL5とエディタについて議論したほうがよさそうです。
 
  • Fortranには、サブプログラムという素晴らしいものがあった。パラメータリストは、インバウンドだけでなくアウトバウンドにも対応していた。今はすべてグローバルに通じています。
  • 特殊な機能のプロパティは、カスタマイズできることが望ましい。例えば、tick-by-tickでスタート、所定の周波数でスタート、環境の自動更新で ループさせるなどです。
  • エキスパートアドバイザーから別のアプリケーションプログラムを呼び出すことができます。例えば、チャート上に表示することができるインジケータ(標準およびカスタムの両方)。
  • ウィンドウに読み込まれた番組名へのアクセス
  • 利用可能なアプリケーションプログラムおよびライブラリの一覧へのアクセス(.
  • Expert Advisorとスクリプトから手動でロードされたインジケータのすべてのインジケータ・アレイにアクセスできます。
  • 端末間の情報交換、プログラムによる対応へのアクセス(コマースがシグナル販売のようになる可能性もある)。
  • 複数のグラフィックレイヤーと完全な自由度(例:インジケーターレイヤーが一番上)(または:注文ごとに別々のレイヤー、現在のシングルレイヤー環境では、一つの価格で複数の注文がある場合、トップの注文行は選択できないため、グラフィックの地平線)。

----

  • エディタはもちろん、デバッガも必要です。
  • 行のグループを1行に折りたたむ機能。
  • MEを閉じたときにラベルが消えないようにする。
  • カスタム関数名をカラーで強調表示
  • ブラケットを点滅させる(左をハイライトすると右が点滅する)。
 
MEから直接カラー印刷が できること。
 
編集者より:
  • ユーザー変数や関数を入力する際の自動補完機能。
  • ユーザー定義関数のパラメータ入力時にツールチップを表示(通常の関数と同様)
  • ブロックのコメント/アンコメントを行う。
  • window "immediately" - 入力されたコード文字列を即座に実行します。
  • 短い行の検索や、コメントされていないテキストの「シェーディング」に関するバグを除去しました。

端末との対話のために。
  • EAのコンパイル時に、チャート上でのみ再起動させるか、何も再起動させないでください
  • 他のファイルを参照しているファイルをコンパイルする場合は、そのファイルもコンパイルしてください。
  • スクリプト/エクスパート/インジケータをコードから起動/停止する(同じ "immediately "ウィンドウから)。
言語別では
  • コードに含まれる記号のリスト。
  • コードからすべてのシンボルパラメータ(端末が計算するものすべてを計算できるように)。
  • events - 取引、インターフェース、エラーイベント。
  • コメント機能 - 機能の拡張(前のテキストを消さない、フォントや色の選択、綴じ具の角度など)。
  • グローバル変数 ターミナル - ユーザーからの非表示、コマンドまたは変更直後のディスクへの保存機能。
さて、前の登壇者の方々とほぼ同じで、私もとりあえず終了です。
 

MQL5の 特殊な関数の 性質がわからないと、事前に言い切ることはできませんが、MQL4にもそのような問題があります。

Start()がループしている。効くんです。ユーザーが他のアカウントに接続する。新規口座の環境情報は、start()が強制終了する前に、現在のセッションでExpert Advisorが利用できるようになります。Expert Advisorは(内部分析に基づき)、(前の口座にあった)注文が閉じられたこと、スワップ、ストップレベルなどが変更されたこと、そしてそれに伴うすべての結果を報告します。

Expert Advisorは、新しい口座の情報の後にdeinit-init-start()を決定することも明示的に追跡しません。 パターンを捕らえることはできていませんが、deinitializationは常に起こるとは限りません。 例えば、ターミナルをロードしたばかりのときに口座Aへの接続が確立されていれば、deinit-init-startせずに口座Bに移行することが行われます。1分後、BからAへの切り替えは期待通りのdeinit-init-startで行われ、その後のAからBへの切り替えや他のアカウント間の切り替えも正常に行われるようになりました。この問題は、アカウントへの最初の接続の事実と何らかの関係があるようです。その効果は持続的です。

一般的には、別のアカウントに切り替える場合、まず現在の環境で現在のアカウントを終了させ、その後、ゼロから始めるようにします(新しいアカウントに接続し、ターミナルで新しい環境の値を実行します)。

 

オブジェクトモデルを実装したのであれば、そのオブジェクトモデル、利用可能なメソッド、プロパティなどをデバッグの際にも見てください。

それ以外では、上記で提案したものはすべて、最新の開発環境で利用可能なものの一部であり、例えばMicrosoft社のVisual Studioを複製するだけでよいのです。例えば、VB 6からVB .NETに乗り換えた場合、あまり大きな変化はなく、関数が別のクラスの一部になっただけで、すぐに代替品を見つけられない人にとっては、アプローチの規模が大きくなっただけである。低レベルの関数だけが削除され、そのおかげで私は知識を広げ、プログラミング言語を変えることさえできたのですが、もちろんobjptrなどの関数を知らない人には必要ありませんでした :)もちろん、その後、すべての代替関数やクラスを学んだが、ポインタでの作業のような小さな機能のアクセシビリティの容易さは、私は前世紀に戻ることができなかったとC + +霧の中で論理的推論せずに、新しい分野を切り開いた、私はVBで書こうとしながら、私はASMを勉強し、プログラミング言語を作成しようとしたが、さらに学習システムプログラミング、応用プログラムのために作られたすべての最高の.NETであるという事実に私を導き、私はJavaの論理を理解しなかったし、前に

追伸:これは目指すべき姿の一例として:)

.NET技術の深刻な発展を誘発した最も重要なことは、Reflectionとそれが細部にまで動作する方法を理解するためにソースコードを勉強する機会は、説明や例では、ルートに表示する機会よりも多くを与えることはありません。これまで低レベルのアプローチのために開発されてきたディスアセンブラやその他多くのツールは、すべて取るに足らないものとなってしまった。例えば、私は.NET 1.0と1.1、さらに.NET 2.0の詳細や違いをたくさん知っていますが、それは新しいバージョンが良いとか優れているということではなく、ソースコードとマシンコードの違いを見てきて、今でも.NETが到達するすべての新しい高みを見ているからなのです。

私も端末とその言語を勉強したと仮定して、持っているものを考慮して比較するものがあると仮定してみましょう:)私は言葉を信じず、自分の目を信じる:)

 

1) ドラッグ&ドロップによる注文のドラッグは、あるプログラムのように、今は名前を覚えていませんが、美しいものです))

2) テスターW1において

3) ビジュアルEAエディターにより、MQL言語を全く知らない初心者でも、自分のアイデアをEAに実装して履歴で確認することができる。確認したアイデアは幻想であることが判明し、プログラマーがいなければ幻想をあきらめるチャンスはないため)

最後の1つは、素晴らしいことだと思いますが、これが実現すれば、mtは飛躍的に進化し、真のマスマーケットになり、競合他社を永遠に置き去りにすることになるでしょう))

 
指標に適用されたルールに基づいて、視覚的に戦略を作成する機能。トレーディング・ソリューションズのビジュアル環境に実装されているのと同じです。シグナルを確認するためだけにExpert Advisorのコードを作成したり、わざわざインジケータを用意する必要がないのは便利です。