FX業者「デューカスコピー・ジャパン」が提供している取引プラットフォーム「JForex」上で動作する自動売買ストラテジーを開発する場合、通常「JForex」に搭載されているストラテジーエディタを使用して開発を行いますが、 開発ツールとしては非常に貧弱で使いやすいとはいえません。
JForexのストラテジーはJAVA言語で開発を行いますが、JAVA言語の開発ツールとしては プログラム開発を効率よく行うための支援機能が充実している「Eclipse」という無料で利用可能なオープンソースの優秀な開発ツールがあります。
どうせなら、JForexのストラテジー作成も「Eclipse」を使用して開発効率を上げたいですよね。
そこで、JForexのストラテジーをEclipseを使用して開発する方法を紹介したいと思います。
Eclipseのダウンロードとインストール
Eclipseのダウンロードとインストール方法はネット検索すればいくらでも出てくるのでここでは簡単に紹介します。
ダウンロード
Eclipseを簡単にインストールするには、Eclipse 本体と日本語化を行うためのPleiadesプラグイン、その他便利なプラグインをパッケージ化した「Pleiades All in One」パッケージを利用するのが便利です。
2017年9月23日現在の最新のEclipseバージョンは「Eclipse 4.7 Oxygen」となりますのでこれをダウンロードします。
上記ページにアクセスすると、以下のような画面が表示されるはずです。
Javaと書いてある項目から、自身のパソコンのプラットフォームに適合する「Download」ボタンをクリックしてください。
FullEditionとStandard Editionがありますが、Full Edition には Eclipse 実行用の Java が付属しており、余計な設定がいらないので「Full Edition」をダウンロードされることをお勧めします。
インストールと起動
Eclipseのインストールはダウンロードしたzipファイルを解凍して自身の使いやすいフォルダに展開するだけです。
解凍して出来たeclipseフォルダ直下に「eclipse.exe」がありますのでダブルクリックすればeclipseが起動します。
起動しやすいように、デスクトップにeclipse.exeへのショートカットを作成しておきましょう。
起動すると最初にワークスペースを選択するように言われるので都合のいいディレクトリを指定してください。
「起動」ボタンをクリックすると「Eclipse」本体が立ち上がります。
JForex SDKのダウンロードとインストール
ダウンロード
JForexストラテジーをEclipseで開発できるようにするには、「JForex SDK」をダウンロードする必要があります。
https://www.dukascopy.com/wiki/en/development/get-started-api/use-jforex-sdk/download-jforex-sdk
上記ページにアクセスし、「Download JForex SDK」をクリックして「JForex-3-SDK.zip」をダウンロードしてください。
インストール
ダウンロードした「JForex-3-SDK.zip」をEclipseのワークスペースディレクトリ内に以下のように解凍します。
EclipseでJForex SDKを利用できるように設定
Eclipseを起動します。
「ファイルメニュー」から「インポートを」クリックします。
インポートダイアログが起動します。
「Maven」内の「既存Mavenプロジェクト」をクリックし、「次へ」ボタンをクリックします。
Mavenプロジェクトのインポートダイアログが表示されます。
「参照」ボタンをクリックしてください。
フォルダー選択ダイアログが表示されるのでEclipseワークスペース内に保存した「JForex-3-SDK」フォルダを選択し、「OK」ボタンを押します。
Mavenプロジェクトのインポートダイアログ画面に選択したディレクトリの情報が反映されたことを確認し、「完了」ボタンをクリックします。
Eclipseのパッケージ・エクスプローラーに「JForex-3-SDK」が読み込まれました。
パッケージ・エクスプローラー上の「JForex-3-SDK」フォルダを展開し、「JREシステム・ライブラリー[JavaSE-1.7]」を右クリックして表示されるプルダウンメニューから「プロパティ」を選択します。
JREシステム・ライブラリー[JavaSE-1.7]のプロパティーダイアログが表示されます。
画面上の実行環境のところが「JavaSE-1.7(Java7)」になっていると思うので、これを「JavaSE-1.8(Java8)」に変更し「適用して閉じる」ボタンをクリックします。
これで、Eclipse上でJForexのストラテジを開発できる環境が整いました。
JForex-3-SDKが機能しているかチェックする
インポートしたJForex-3-SDKが正常に機能するか確認してみましょう。
パッケージ・エクスプローラー上の「JForex-3-SDK」フォルダを展開し、「src」→「singlejartest」内にある「Main.java」をダブルクリックして開きます。
右側に「Main.java」がオープンするので、ファイル内の「userName」と「password」をJForexデモ口座のアカウント情報に書き換え保存します。
パッケージ・エクスプローラー上の「Main.java」を右クリックして表示されるプルダウンウィンドウから「実行」→「Javaアプリケーション」を選択します。
正常に実行されると、Exlipseの下部ペインにあるコンソールタブ内にずらずらとログが表示されます。
確認できたら上部の赤い四角ボタンを押してストラテジを終了させてください。
JForexストラテジーのテンプレートファイルを用意する
Eclipse上でJForexストラテジーを作成する際に、0からソースコードを作成するのは効率悪いので、テンプレートファイルを用意しておきましょう。
Eclipseのパッケージ・エクスプローラーから「JForex-3-SDK」を展開し、「src」上の右クリックして表示されるプルダウンメニューから「新規」→「クラス」をクリックします。
「新規Javaクラス」ダイアログが表示されるので、「パッケージ」に「参照」ボタンを押して表示されるダイアログから「jforex」を選択します。
名前欄に「StrategyTemp」と入力し、「完了」ボタンをクリックします。
パッケージ・エクスプローラー上の「jforex」パッケージの下に「StrategyTemp.java」というファイルが作成され、右ペインに「StrategyTemp.java」がオープンされます。
次にJForexを起動(ここではJForex3を使用)します。
起動したら、ナビゲーターウィンドウの「ストラテジー」から「カスタム」を右クリックして表示されるプルダウンメニューから「新しいストラテジー」クリックします。
ストラテジーエディタが起動し、自動的にストラテジーの雛形が表示されます。
ストラテジーエディタ上で、キーボードからCtrl+A、Ctrl+Cを行い、雛形コードの全てをコピーします。
Eclipseを表示し、「StrategyTemp.java」内のコードを全て削除し、先ほどJForexでコピーした雛形コードをCtrl+Vで貼り付けます。
最後にソースコード上のクラス名をStrategyTempに変更して保存します。
ここで、気をつけないといけないのが、Eclipseの設定画面「Java」→「エディター」→「保管アクション」において「保管時に選択したアクションを実行」と「インポートの編成」にチェックがついていると、コードを保存したときに使用していないimport文が削除され、アスタリスクでimportしている部分は、ソースコード内で使われている具体的なクラスのimport文に自動整形されてしまうので注意してください。
具体的には以下のように。「import java.util.*;」が削除され、「import com.dukascopy.api.*」が使用されているクラスに書き換えられてしまいました。
書き換わるのが嫌なら設定で外しておいてください。
以上で、ストラテジーの雛形ファイルの完成です。
今後新しいJForexストラテジーを作成していく時は、この「StrategyTemp.java」のコードを流用して作成しましょう。
JForexの設定でストラテジーのファイルの場所を変更する
Eclipse上で作成したストラテジーをJForexから即座に利用できるように、JForexの設定でストラテジーのファイルの場所を変更しておきましょう。
JForex(ここではJForex3を使用)を起動し、メニューの「設定」から「オプション設定」→「アドバンスド」をクリックします。
「ファイルの場所」タブをクリックし、ストラテジーの保存場所を右のフォルダの選択ボタンからEclipseで使用しているストラテジの保存場所に変更して「OK」ボタンを押します。
最後に、JForexを再起動させて完了です。
これで、JForexのナビゲーターウィンドウのストラテジから「ストラテジーを開く」を選択したときに、Eclipseのソースコードの保存場所が開かれるようになるので、ストラテジの適用をすばやく行うことができ、保守メンテナンスがやりやすくなります。
最後に
以上、Eclipse上でJForexストラテジーを作成するための手順をすべて説明しました。
Eclipse上で開発すれば、さまざまな支援機能により効率よくストラテジーの開発が出来ると思うので、JForex上で開発しずらいなーと思っている方はぜひ一度Eclipseを利用して開発してみてください。
コメント