2010年12月19日日曜日

EAはC++で作ろう! MinGWを使って、MQL4からリンク可能なdllをLinux上でクロス開発

Ubuntu(Linux)上にインストールしたMinGWを使って、ダイナミックリンクライブラリ(dll)を作成し、MQL4からリンクすることによって、MetaTrader4上で実行できることが確認できたので報告する。

例えばJForexはJava環境での自動売買プログラムの開発が可能である。オブジェクト指向型のJava言語を使った開発は、C言語ライクなMQL4を使ったプログラムよりも高度な記述に適している。しかも、Javaは生来クロスプラットフォーム環境を強く意識しており、Windows環境に強く依存しているMetaTraderではプラットフォームに対する融通が効かなかった。
今回、Linux環境上でMQL4用のdllをクロス開発できることが確認できたことにより、Windowsに一切頼ることなく、C++などのオブジェクト指向型言語を使った、JForexよりも柔軟なEAの開発が可能になる。

2010年11月28日日曜日

MQL4、C++でEA開発!?

その存在を知ってからというもの、Javaでそのまま自動売買システムが構築できるというJForexが気になって仕方なかった。
MQL4は、C言語に似ているとはいえ全く同じではない。文の構造がC言語の構文と同じであったり、if文などのfor文などの命令文がC言語を踏襲しているから、とっつきやすいのは間違いない。だが、C言語のように構造化したコードを書くのは意外に難しい。

2010年11月6日土曜日

トレンド分析(移動平均)

自動売買システムを設計する場合、まず、今のトレンドを推定することが重要になる。
今、この瞬間が上昇トレンドなのか、横ばいトレンドなのか、下降トレンドなのか。多くの場合、移動平均を使ってトレンドを決定する。移動平均のラインを遠目で見て、上り勾配に見えれば上昇トレンド、下り勾配に見えれば下降トレンド、どちらとも言いがたいような浅い勾配の時は横ばいトレンドと見る。人間が見る場合はこれでいいが、システムトレードの場合、どこからどこまでが上昇トレンドでどこからが横ばいなのか、決め手が全く無い。これを経験で決めるのであれば、システムトレードの意味がない。

2010年10月31日日曜日

システムトレードについて考えた

FXにしても株にしても、先物市場でも、相場に手を出すということは、大衆心理を読むということに他ならない。今この時点から、0.01円、上がるのか下がるのか。それを想像するとき、皆が買うのか売るのか、自分以外の大衆が、売ろうとするのか買おうとするのか、それを考えざるを得ない。
また、昨今の相場に関する指南書のほとんどが、売買に向かう時の気持ちの持ち方について多くのページを割いている。

2010年10月24日日曜日

まず、できるだけ単純化してみる

まずは、日々複雑に動き続ける市場をそのまま眺めるのではなく、目標を定めて、極力単純化して見ていくことにする。

FXでは同じ通貨ペアに対して、買いポジションと売りポジションを取ることができる。同時に両ポジションを生成(両建て)できるかどうかは業者によるが、両建てができないとしても、何も買う前から売り発注を出せるというのは株の現物取引などとは大きく違うところだろう。

2010年10月23日土曜日

システムトレード 今後の方針

MetaTrader4を使う使わないにかかわらず、システムトレードを行うにあたっての基本方針とも言うべき考え方をまとめておこうと思う。
まず、なぜシステムトレードを行うのかという根本的な理由から押さえておきたい。
一般的には、システムトレードの最大の利点は「決まったルールに従って売買を進めることができる」ことであるという。裏を返せば、手作業で人間が発注を出していると、ついつい理屈に合わない心理的な要因に流されてしまうということだろう。

2010年10月22日金曜日

Ubuntu 10.10 でも MetaTrader4 問題なく稼働中

Ubuntuのバージョンを10.04から10.10にアップグレードした。特に問題なくwine1.3上でMetaTrader4もサクサク動いている。

2010年10月18日月曜日

MetaTrader4 複数のデモ口座を切り替えて使う

MetaTrader4で、複数のデモ口座を切り替えて使うことができる。口座の情報は "~/.wine/drive_c/Program Files/MetaTrader/config" (Windowsだと、 "c:\Program Files\MetaTrader\config") の下にある、拡張子が ".srv" のファイルに入っている。

FOREX.com って……

ゴルゴ13ことデューク東郷が激しくターゲットを狙っている "FOREX.com" のホームページだが、ここは“フォレックス・ドットコムジャパン株式会社”という日本法人のページで、本家 "www.forex.com" の "FOREX.com" とは、どうやら法人格が違うようだ。知らなかった。
どちらも、ゲインキャピタル社の子会社だが、少々雰囲気が違う。

2010年10月17日日曜日

MetaTrader on Linux 121証券デモ口座開設

Ubuntu上にインストールされたmt4
MetaTrader4のインストールができたので、121証券のデモ口座を開設してみた。
"http://fx.121sec.com/guide/robotfxdemo.html"を見ながら、指示に従って進めると、特に問題なくデモ口座を開設することができた。
そのままログインすると、すぐにアップデートが始まり、MetaTrader4が最新版にバージョンアップされ、アップデート後の再起動も全く問題なく行われた。ちなみにアップデートされた今のバージョンは「Version 4.00 Build 226」である。
Linux+wine上で走っているとは思えないぐらい普通に動作している。Windowsは必要無いかもしれない。

Twitterアカウントを作ったら……

Twitterのアカウント(@MetaTrader_FX)を作ったので、twitterfeed.comに登録して、ブログを更新すると自動的にTwitterのつぶやきに流れるようにしてみました。ついでにPingoo!にも登録して、ブログの更新情報がpingサーバーに配信されるようにしてみました。

Ubuntu 10.04 LTS に MetaTrader4 をインストール

普段、仕事ではWindowsを使用しているのだが、趣味ではLinuxを使っている。仕事ではなぜか皆Windowsを使っているので、それに合わせておいたほうが何かとトラブルにならなくて済む。しかし、仕事以外でWindowsを使う気にはならない。Windowsはとにかく不安定だ。しかも、使い込めば使い込むほど不安定になる。その点、Linuxは安定している。しかも、Ubuntu 10.04は、起動が早い。台湾ASUS製のEeePC S101にインストールして使っているが、PDAといい勝負できるんじゃないかと思うぐらい起動が早い。
いつかMetaTraderのLinux版が出ないだろうか、そうすればFXを始めるのに……
そう思っていたが、どうやらMetaTraderのLinux版が出る気配はない。ただ、wineを使えばLinux上でWindowsプログラムを動かすことができる。他のプログラムでいろいろ試してみたところ、結構使えそうだったのでMetaTrader4でも試してみた。
結果は、予想していた以上に簡単。少々拍子抜けするくらいだ。