アドバイザーを書く - ページ 3

 
Alexey Volchanskiy:

こう書けばいいのに......と思っていると、 もう終わり。

EAのコンストラクタをいくつか見てきましたが、通常はインジケータを選択すると、トレード操作のためのシグナルが生成されます。すべてが安っぽく、サイトにカモを呼び込むために設計されているのです。

そう思ってはいけないよ、アレクセイ。

EA構築の原理を理解したい方には、とても便利な機能だと思います。

 
Vladimir Karputov:

MQL5でEAやインジケータ、スクリプトを書くことを学ぶのは、それほど難しいことではありません。プログラミング言語の習得は必要ありません。

まずは、課題を設定し、それを解決しながらMQL5を学ぶというスモールステップからスタートします。MQL5 Referenceを 同時に学習します。


何年もかかりますよ。それとも、私が馬鹿なのかな。

 
George Merts 私見ですが、EAの構築原理を理解したい方にはとても便利な機能だと思います。

我が道を行く

 

MQLは実際には非常にシンプルな言語ですが、非常に専門的で、あるタスクのために設計されています。ですから、たとえばPascalやCなどのプログラミング経験があれば、学習プロセス全体は、主にマーケットに関連するこれらの微妙な点を理解することになり、トレードの経験があれば、すべてが簡単になります。でも、もしプログラミングの経験がまったくなかったら......。しかも、数学が苦手な人は...。この言語でのプログラミングをマスターするのはほとんど不可能で、多くの時間と努力が必要です。2番目のケースで、プログラミングの基礎から始める必要があるのなら、Pascalをお勧めします。変数とその型、ループ、条件(ロジックを学ぶとよいでしょう)、関数、プロシージャといった基本を理解したら、次は、そのロジックを学びます。それから、mqlを始めることができます。

 
Alexey Volchanskiy:

もちろん、MS Officeのスクリプトは、すべて彼のVBAの方言で書かれている。

エドガー・ダイクストラの "名刺 "のひとつに、こんな言葉がある。

BASICを勉強したことのある生徒には、良いプログラミングを教えることはほぼ不可能です。プログラマーになる可能性のある彼らは、回復の見込みのない精神的な障害者である[3]。

原文

BASICに触れたことのある学生に優れたプログラミングを教えることは事実上不可能であり、彼らはプログラマーとして、再生不可能なほど精神的に傷ついている。

私には、たわごとにしか聞こえません。

私は古典的なBASICから始め、初めて成功したプログラム(EC1010のメモリーゲーム)をBASICで書きました。

それでも、Pascal、C、C++、Assemblerで書くことを妨げることはありませんでした。

 
George Merts:

これは全くナンセンスだと私は思います。

私はあの古典的なBASICから始めて、初めて比較的成功したプログラム(EC1010の「メモリー」ゲーム)をBASICで書きました。

それでも、Pascal、C、C++、Assemblerで文章を書くことを妨げませんでした。


しかし、Pascalから書き始めても何も変わりません、BASICは無駄なステップです。しかも、コンピュータ黎明期のエクセルのように、プログラミングのスキルがなくても誰でも簡単な計算ができるような簡易言語なので、普通の言語を習得するのが難しくなっています。そして、実際には、そのスキルは必要でもなければ、開発されることもなかった。

 

気になるのは、なぜBasicやPascalから始めるのか、ということです。車の運転もうちのバケツで覚えなきゃいけないんでしょう?


一般的には、OOPの理論から始めることをお勧めします。Weisfeldのようなもの、それからアルゴリズムの概念、たくさんの本があります。ソフトウェアの形ではUMLを取ることができ、それだけで、あとは好きなように書くことができます。あとは言語の構文と 対象領域の論理を学ぶだけです。

 
Андрей:

しかし、Pascalから書き始めても何も変わりません、Basicsは無駄なステップです。また、コンピュータ黎明期のExcelのように、プログラミングのスキルがなくても誰でも簡単な計算ができるような、非常に簡略化された言語であるため、通常の言語を習得することが難しくなっているのです。そして、実際には、そのスキルは必要でもなければ、開発されることもなかった。

どうだろう、どうだろう。

パスカル - 本当に、何も変わりません。なぜなら、いろいろなOOP-wisdomを使わなければ、PascalはBasicと大差ないからです。

VBAが非常に使われている言語とまでは言いませんが。何が「異常」なのか理解できないのですが?

 
George Merts:

どうだろう、どうだろう。

パスカル - 本当に、何も変わりません。なぜなら、いろいろなOOPの無意味なものを使わなければ、PascalはBasicと大差ないからです。

VBAが非常に使われている言語とまでは言いませんが。何が「異常」なのか理解できない。


Pascalは、異なるタイプの変数の使い方と、あるタイプから別のタイプへの変換方法を教えます。通常のループや条件の使い方を教えます。プロシージャや関数の使い方を学びます。BASICではこれが全くなく、英語のプレーンテキストに数式が貼り付けられているだけです。BASICを学習した後、人はi=i+1しか理解できない。そこには何もないのです。

 
Андрей:

Pascalでは、異なるタイプの変数の使い方や、あるタイプから別のタイプへの変換方法などを学びます。通常のループや条件の使い方を教えます。プロシージャや関数の使い方を学ぶことができます。BASICではこれが全くなく、英語のプレーンテキストに数式が貼り付けられているだけです。BASICを学習した後、人はi=i+1しか理解できない。そこには何もないのです。

もういいんじゃないですか?

BASICでは、ある変数から別の変数に変換できるとは限らず、ループや条件などはPascalと全く同じです。BASICにはプロシージャや関数がないということを初めて知りました。学生の頃も、今も、VBAを使うときも、関数はたくさん使っています。BASICであまり書いたことがないようですが...。

3次元のグラフモデルを計算して最適化し、グラフとして出力するプログラムをExcelで作成したことがあります。このプログラムには、ベーシックでは考えられないようなことがたくさんあります。