2009/01/16

ウサギとオオカミ?

捕食者と獲物の関係を元にどうして波が発生するか考えてみました。
ある条件を設定します。
(結構有名な話ですのでご存知の方も多いと思いますが・・・。) 
条件)
ウサギは、オオカミがいなければ、年間に5%個体数を増やす。
ウサギは、年間でオオカミの個体数の0.1%食べられる。
オオカミは、ウサギがいなければ、年間に0.3%減少する。
オオカミは、年間でウサギの個体数の0.2%個体数を増やす。
単純に考えて、個体数に波が発生することがわかりますよね!
グラフにしたのが右図です。
図の説明 縦軸が個体数を示し横軸が時間経過を示します。
緑線がウサギとオオカミの個体数の合計 青線が、ウサギの個体数 赤線が、オオカミの個体数 グラフからわかることは、 ①オオカミの個体数の増加のピークとウサギの増加のピークに時間的なズレがある。 ②全体数の増加のピークは、ウサギとオオカミの個体数の増加のピーク間にある。 まとめ もし、為替の値動き(波)が、個体数の合計と同じ現象で発生するのであれば、 ウサギの個体数をとらえられるEAが最も利益を生むEAになるに違いない。 ※などと考えながら、EAを作成しています。   そんな簡単なものではありませんが・・・・・・

Expert adviserの構成

Expert adviserの構成 大きく分けると本体とその他に分けられる。 本体 EA本体は、大域(グローバル)に関数の集合体を格納したもので、右記の図のような構成。 ※EA本体に必ず置かなければならないものとして、start()【メイン関数】があげられる。 その他 ライブラリーや組み込み関数、自作インジケーターなどがあげられる。 大域に設置されるコード 大域(グローバル)変数・配列・プロセッサー命令など基本条件や宣言・著作権の明記などである。 ※注意 ここで記載された内容は、プログラム全体に影響を与えるものとなる。 ※注意 大域で変数を宣言すると、EA開始時に初期化され、初期化指示を出さないと初期化されない。