イギリス・日本の2拠点でFIRE

自分と未来は変えられる  選択肢を広げる生き方

「MT4 でEA自作しちゃお~」サイトで学習して出来るようになった事

-- FIREまで835日  

 

「EA自作しちゃお~」サイトでEA自作するところまで学習し、実際に出来るようになったと自分的に思った事を書いてみる。

 

1.プログラミングの基本ルールの理解

プログラムが機能するために必要なことのうち、基本的なことが分かるようになった。

 

2.プログラミングのプラクティスの理解

プログラムの機能には影響がなく、コンパイルエラーも起こさないが、プログラマーが日常的に従っている暗黙のルールが分かるようになった。

 

ラインごとのコメントアウトと、ここからどんなコードが始まるのか見出しのようなコメントアウトの仕方。

double entry_rate            //エントリー値 

//+------------------------------------------------------------------+

//|売買ジャッジ                                                                             |

//+------------------------------------------------------------------+

 

  • インデント

{  }の時に下げるとか、//コメントアウトや変数は列を揃えるとか。

  • スペースの開け方

スペースはプログラムで認識されないので読みやすいようにスペースを使うことがある

 

3.コンパイルエラーを自分で直せる

コンパイルエラーリストにはエラーコードの行が書いてあるので、その行に行ってどこが間違えているのか見つけられるようになる。

だいたい、似たようなエラーがでる。

大文字小文字の間違いや、カッコの付け忘れ、不要なところにセミコロンなど、「タイプミス」というレベルのものだ。(管理人さんのコードを見ながら打っているので、まさにタイプミスなのだが・・・。)

一つのエラーを修正すると、カスケード式にエラーが直っていたりして面白い。

 

夜も遅くなると頭が働かないので、たまにドツボにはまって理系イギリス人夫にHELPしてもらうことも多々あったが、だいたいは自分で直せるようになった。

 

4.EAやインジケーターをMT4で動かせる

.mq4ファイルやソースコードやがあれば、それをMT4で稼働させる手順が分かるようになる。

ストラテジーテスターも初めて使ってみた。

 

5.コードの種類の理解

Intと打てば水色、ENUM関数だと黄色、printfならピンク、マイ変数やマイ関数は黒など、名詞や動詞などの英語の品詞のような色分けがされている。

型の宣言を打っているのに水色にならない場合はタイプミスがあることが分かるし、コードが何をしようとしているか理解する際に、マイ関数であれば全部自分で指定が必要だな、とかコードの読解力が深まる。

 

6.副産物

プログラミングへの興味も増えたし、仕事で使っているHTMLの理解や応用も深まった。

 

まだできないこととしては、

理系イギリス人夫に教えてもらいながらやったが、多分経験が必要。
自分でコードを思いつく
コンパイルエラーでは引っかからない間違い(設計ミスやバグ)の見つけ方

 

 

もちろんまだまだ初心者の域は出ないプログラマーだが、分からないなりにも時間をかけていけば分かっていくものだなと体感した。

 

こちらの記事にEA自作を学ぶことにしたきっかけを書いたが、次はいよいよ、誰かが作ったリピート系自動売買(要はトラリピ)のEAのソースコードを読解し、マイ戦略用に修正していく作業に入る。