まめりうむ

WindowsからMacへ乗り換るためのネタをまとめたり好きなことをまとめたり。

*

JForexで注文画面を自作する

      2017/06/05

スポンサーリンク

NDD方式で約定力の高さが魅力のJForexですが、注文画面がちょっと使いにくく感じます。

なので、今回はJForexのチャートツール上で動くシンプルな注文画面を自作したいと思います。

IStrategyインターフェースについて

FXで一番有名なプラットフォームといえばMT4になるかと思います。

MT4で自作のインジケータやEA(自動売買プログラム)を作成する場合、C言語ライクなMQLという言語が用意されています。

JForexでは基本的にはJavaで開発を行います。(JForexでもMQLが使えるようですが試したことありません…w)

JForexにおける売買プログラムはストラテジーといい、ストラテジーを作成するにはIStrategyインターフェースを実装する必要があります。

IStrategyインターフェースには

  • onStart
  • onTick
  • onBar
  • onMessage
  • onAccount
  • onStop

という6つのコールバックメソッドが用意されています。

各コールバックメソッドの内容は次のとおりです。

onStartメソッド

ストラテジー開始時に呼ばれるメソッドです。

ここで渡されるIContext型のcontextオブジェクトが肝となる部分で、このcontextオブジェクトを通してトレードの実行や履歴へのアクセスが出来ます。

onTickメソッド

ティックの更新毎に呼ばれるメソッドです。

ストラテジー実行前に選択した通貨ペアのティックが更新される度に呼び出されますので、通貨ペアが複数ある場合は、どの通貨ペアのティックが更新されたのかをフィルタリングする必要があります。

onBarメソッド

足の確定毎に呼ばれるメソッドで、10秒足、1分足、5分足など、JForex上の一般的な足の確定時に呼ばれます

一般的な自動売買プログラムは足の確定で注文を出すケースが多いかと思うので、そーゆープログラムの場合はどの足の確定で呼ばれたのかをフィルタリングする必要があります。

また、onTickメソッドと同様、通貨ペアが複数ある場合はそのフィルタリングも必要になります。

onMessageメソッド

サーバからのメッセージが送られる度に呼ばれるメソッドです。

注文送信時や変更時、取消時等にきちんと約定したかどうかはこのメソッドで渡されるIMessage型のmessageオブジェクトの中身を見るとわかります。

onAccountメソッド

口座情報が変更される度に呼び出されるメソッドです。

5秒に1回位の頻度で呼び出されるようですが使ったことありません…w

onStopメソッド

ストラテジー終了時に呼ばれるメソッドです。


注文画面を作る上では

  • onStart
  • onTick

を実装するくらいでなんとかなりそうです。

では、次回からいよいよ実装に移りたいと思います。

 - FX, プログラミング

スポンサーリンク

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

  関連記事

JForexで約定履歴画面を自作する

MT4もそうなんですけど、JForexも多くの国内業者に比べて約定履歴が見にくい …

JForexで注文画面を自作する(スプレッド表示と新規注文時のオプション)

前回までで成行注文と全決済が出来るようになったので、今回はもう少し使い勝手を良く …

Pythonスタートブックを読みました

Sublime Text3きっかけで、前からちょっと触ってみたいなと思ってたスク …

Sublime Text3でPython開発環境を整えるためにインストールしたパッケージと設定

Sublime Text3でPythonのお勉強をするのに役立ちそうなパッケージ …

サーチエンジンの検索結果から欲しい情報だけ抽出するPythonスクリプト

引き続きPythonドキュメントの日本語訳を読んでます。 チュートリアルを読み終 …

JForexで注文画面を自作する(ブレイクアウト注文)

前回まででカンタンですが結構使い勝手の良い指値・逆指値注文まで出来ました。 今回 …

Pythonのwith文

このところ興味の矛先がPythonからRaspberry Piに移りつつあります …

Pythonでニコ生アラートを作る(放送通知サーバへの接続情報を使ってsocket接続)

前回の続きです。 今回は、前回得られた放送通知サーバへの接続情報を使ってsock …

JForexで注文画面を自作する(指値・逆指値注文)

前回までで一応成行注文に最低限欲しい機能は付けられましたので、今回は指値・逆指値 …

Pythonでニコ生アラートを作る(放送通知サーバのステータス確認と接続情報の取得)

このところプログラミングしたい病が発生していて、ひっそりとPythonでニコ生ア …