JForexのSDKがIntellij IDEAで使えなかったので解決した

当方Java3日目のド初心者

 

専門用語等の間違いは容赦

 

 

 

 

起こった問題

 

www.dukascopy.com

 

 

公式サイトのとおりにIntellij IDEAに

pom.xmlをインポートしても、

 

解決できない

インポートがうまくいかない

 

 

解決方法

色々いじってみると、画面下のビルドタブにこんなエラーが。

import時にソースが上手くダウンロードできていなかったらしい

 

Maven 3.8.1 以降、HTTP リポジトリはブロックされています。」

 

ということでpom..xml見てみると、

 

httpになってる!

 

ということでhttp→httpsにしてやれば簡単に解決した。

www.dukascopy.com

www.dukascopy.com

 

一部を書き換えるのが怖い場合はまるごとこのリンクに書き換えればOK。

 

 

無事、参照が解決された!!

MT4/MT5のショートカットキーが便利すぎる

こんにちは。metroです。

 

MT4はショートカットキーがあって便利。
でもMT5にはショートカットキーがないから不便。
しかし、MT4のショートカットキーもかゆいところに手が届かない。

 

過去の遺物になりつつあるMT4から離れ、MT5を使いたい。
とはいえ、ショートカットキーがないから使えない。

 

じゃあTradingViewを使う?
でもショートカットキー少ないし、トレードするのはMetaTraderなのだけれども。。

 

過去の僕の悩みです。

 

まずはMT5について。MT5を利用している方は一体、
どんなショートカットキーを使っているんでしょうか?

 

おそらく、ほとんどの方が何も使っていないと思います。

 

これはMT5の普及率が圧倒的に低いことから
簡単に想像できます。

 

MT4に関して言えば、ほとんどのMT4利用者はfaiさん作の
Accelaを利用してトレードをしていることと思いますが
機能に満足していますでしょうか?当時の僕は満足しませんでした。

 

例えば、頻繁に使うH1,H4,D1の時間足は
5,6,7のキーに設定されていますが
いちいちキーの場所を目視で確認して押す。

 

ショートカットキーって本来、手元を見ずに
実行できることに価値があるのでは。。。?

 

また、AccelaはAutoHotKeyという
mt4とは別のソフトウェアを起動させて

 

windows上の挙動を無理やりmt4に
反映させているものになります

 

要は、mt4だけで完結できない
ということが少し使いづらいなというわけです。

 

どうせだったらインジケーターとしてMT4に適用できて
MT4上で完結するものが良いですよね。

 

 

そのあたりを勘案しつつ、更に高機能な
MT4/MT5のショートカットキー
無いかな...無いかな...

 

 

いくら探しても見つからなかったので

 

 

もう作ったろうと。

 

作りました。【HotKeys】という
オールインワンのショートカットキーを。

 

ショートカットキーインジですが、
ショートカットキーの範疇を超えた機能もちょこちょこ搭載しています。

 

HotKeysは自分用に作って、誰にも公開せず使っていたのですが、
しばらくしてからゴゴジャンで販売開始しました。

 

嬉しいことに、2024/03/13時点で24人の方に利用していただいてます。
利用者の方にもめちゃくちゃ褒めて頂くこともありました。(レビューにも書いててほしい!!!)

 

そこで本題。この僕、metroの思いつきで料金を大幅改定することにしました。
また、機能を大幅に強化しつつ、継続的に開発を続けていくことにしました。

 

 

 

目標は「MetaTraderとTradingViewの機能を両方兼ね備えたショートカットキー」です。

 

現在、諸々のアップデートを記念して、2024年5月15日までアーリーアクセスとして、無料でご利用いただけます。MT4/MT5両方とも無料で使えます。

hot-keys.studio.site

 

 

MT5以降に二の足を踏んでいる方
裁量トレードの効率を爆上げしたい方に使ってみていただきたいです。

 

ちなみに、HotKeysのスローガンは

「チャート操作をワンハンドで」

 

「チャートから目を離さないことがこんなに便利だとは。」
僕が過去に味わった感動をあなたにも味わってもらいたいです。

 

 

※機能が少ない過去版ですが、GogoJungleからも購入できます。

【HotKeys】MT4版(ゴゴジャン)

【HotKeys】MT5版(ゴゴジャン)

 

【ショートカット機能一覧】

 

★オブジェクト描画系(初期キー)

  • 水平線(G)
  • 垂直線(V)
  • トレンドライン(T)
  • 矢印ライン(D)
  • 長方形(R)
  • フィボナッチリトレースメント(F)
  • テキストラベル(普通のテキストにも対応)(E)
  • 全描画オブジェクト削除(I)

 

★チャート操作系

  • 時間足の切り替え(1/2)
  • 通貨ペアタブの切り替え(W/Q)
  • 自動スクロールの有効/無効化(A)
  • スクリーンショット(P)
  • クロスヘア(C)

 

 

裁量トレーダーに必須の合計13種類の機能を
一つのインジケーターで扱えるように開発しました。

 


 

 

各ショートカットキーは、「A~Z」の26文字に「1~9」を加えた、

35種類のキーから選んで割り振る事ができます。

 

 

【各ショートカットの詳細】

 

①水平線(初期キー:G)

 

ショートカットキーを押下し、チャートをクリックすると
水平線を引くことができます。

 

各時間足ごとに、ラインの色や太さ、スタイルなどを設定できます。
設定できる時間足は

  • 1分足
  • 5分足
  • 15分足
  • 30分足
  • 1時間足
  • 4時間足
  • 日足
  • 週足
  • 月足

の9種類となっております。

 

 

 

 

 

さらに、下位足で引いた細かなラインは 上位のチャートには表示されないという工夫をしています。

 

この機能が【HotKeys】で水平線を引くことの 最大の価値といっても過言ではありません。

 

 

具体的にチャートを見てみましょう。

上位足から、順にラインを引きます。

 

 


 

 


 

 

 

 

その後、もう一度日足チャートに戻ると、

 

 

 

オブジェクト一覧にはしっかりと
他のラインも表示されていますが、

 

下位足で引いたラインは
上位で見えないようになっています。

 

 

日足チャートなどの上位足では
1時間足などの下位足で引いた細かなラインがあると

 

ごちゃごちゃとして
分析の邪魔になってしまいます。

 

そんな状況を回避してくれるのがこの機能です。

 

 

②垂直線(初期キー:V)

 

ショートカットキーを押下し、チャートをクリックすると
垂直線を引くことができます。

 

③トレンドライン(初期キー:T)

 

ショートカットキーを押下し、チャートをクリックすると
トレンドラインを引くことができます。

 

④ 矢印ライン(初期キー:D)

 

ショートカットキーを押下し、チャートをクリックすると
矢印ラインを引くことができます。

 

ラインの色や太さ、スタイルを設定できます。

 

また、インジケーターのパラメーター設定で
連続描画のON/OFFを切り替えられます。

 


 

 

連続描写中に、これ以上描画しない場合は
もう一度キーを押せばキャンセルできます。

 

 

裁量トレードではダウ理論エリオット波動など
「波」に関する分析がメインになります。

 

相場の波を捉え、ざっくりとした方向感を掴むためにも

 

チャート上に手軽に波を描けると
ぐっと環境認識が楽になります。 

 

 

⑤長方形(初期キー:R)

 

ショートカットキーを押下し、チャートをドラッグすると
長方形を描画できます。

 

 

⑥フィボナッチリトレースメント(初期キー:F)

 

ショートカットキーを押下し、チャートをクリックすると
フィボナッチリトレースメント描画できます。

 

 

⑦テキストラベル(普通のテキストにも対応)(初期キー:E)

 

ショートカットキーを押下し、チャートをクリックすると
テキストラベルを描画できます。

 

また、インジケーターのパラメーター設定で
「テキストラベル/テキスト」を切り替えられます。

 

 

⑧全描画オブジェクト削除(初期キー:I)

 

ショートカットキーを押下すると、
アクティブなチャートウィンドウに描画されているオブジェクトが
すべて削除されます。

 

 

 

 


 

 

うっかりこのキーに触れてしまうと、
当該チャートに描画したライン等はすべて消えてしまうので


誤って手が触れることのないキーに設定しておきましょう。 

 

 

 

⑨時間足の切り替え(初期キー:1 or 2)

 

 

チャートの時間足を切り替えられます。

 

 

個人的にこれがないと裁量やってられません。

 

MT4では、Accelaを使って1~9の数字に1分足から週足までを
割り当てて使っている方は多いと思いますが

 

効率を重視する裁量トレーダーの場合、
時間足の変更は「1」で下位足、
「2」で上位足という設定にすることをお勧めします。

 

なぜなら、毎回目線を
キーボードに移す必要がなくなるからです。

 

Accelaでは
1~9に時間足を一つずつ割り当てていますが

 

それでは毎回キーを押すのに
手元を見ることになってしまいます。

 

少なくとも、右手はマウスを握っていることを考えると

 

「5」「6」「7」「8」「9」あたりは
ノールックで押すというのはなかなか難しいはずです。

 

 

しかし、【HotKeysでは、時間足変更のショートカットキーを
「1」に「1つ下の足」、「2」 に「1つ上の足」を設定することで

 

キーボードに置いてある左手だけで、ノールックかつスムーズな
時間足の変更が可能になっています。

 

 

 

※MT4で多くの方が利用しているであろう、
1~9のキーに各時間足を割り振ったバージョン【HotKeys1to9】を

 

【HotKeys】のオプションとして提供しておりますので
興味のある方は参照してみてください。

 

(オプションのみの購入はできません。ご了承ください。)

 

 

⑩通貨ペアタブの切り替え(初期キー:W,Q)

 

チャートを最大化しているときに、 

通貨ペアのタブをワンタッチで移動できます。

 

(※表示中のすべてのチャートに適用していることが前提となります)

 

Wキーを押すことで、次のタブへ切り替えられます。

 

 

 

また、Qキーを押すことで、前のタブへ切り替えられます。

 

 

 

 

※チャートの順番は、「新規チャート」から

表示した順で決まります。

 

 

通貨ペアのタブが並べられた順番で
切り替わる訳ではないのでご注意ください。 

 

 

 

⑪自動スクロールの有効/無効化(初期キー:A)

 

レートの更新があった場合にチャートが自動で
最新の位置に戻るかどうかを切り替えられます。

 

こちらも、裁量トレーダーにとっては
ものすごく便利な機能。

 

過去のチャートをさかのぼって分析することは
裁量トレーダーには避けては通れません。

 

現在見えているチャートパターンと
過去の情報を交互に見たいときに、

 

何度も自動スクロールの切り替えを
マウスでカチカチやるのは非常に非効率的です。

 

 

スクリーンショット(初期キー:P)

 

ショートカットキーを押下すると、アクティブなチャートウィンドウの
スクリーンショットを撮ることができます。

 

トレードの上達には、自分の「負けグセ」を徹底的に分析し
二度と同じ過ちは繰り返さないという姿勢で望む事が欠かせません。 

 

 

トレード結果のスクリーンショットを撮り、何度も
繰り返し分析、改善、練習の反復を続けるのに役に立ちます。

 

 

⑬クロスヘアへの切り替え(初期キー:C)

 

ショートカットキーを押下すると
クロスヘアが利用できます。

 

え?

「Ctrl + F」で使えるじゃないかって?

 

小指をCtrlに持っていくときに、手首の角度も変わり
作業効率が落ちます。

 

もしかしたら正しくキーを押すために
キーボードを見る必要があるかもしれません。

 

効率的で質の高いチャート分析を長期に渡って続けたいなら
小指、そして目線の移動すらも惜しみましょう。

 

ホームポジションから
左手を動かしてはいけないのです。

 

 

 

------------------------------------

 

 

 

以上が、最強の分析ショートカット【HotKeysの機能紹介です。

 

勘の鋭い方ならもうお気づきかもしれませんが
【HotKeysに搭載されているショートカットキーはすべて

 

ホームポジションにおける
左手の範囲で完結するように
設計されています。

 

 

使う描画ツールをクリックするなどの
機械的で単純な作業は左手に全て任せて

 

ラインを引いたり、波を描いたりという
直感的な操作はすべて右手がスムーズに行えるようになっています。

 

 

「ショートカットキーがほしい!」というのは
FXを初めてからしばらく経って

 

プラットフォームの操作にも
ある程度慣れてから
考えることだと思います。

 

そんなFX中級者以上のあなたがこれから

 

さらなるステップアップ、
ゆくゆくは専業のトレーダーを目指す

 

その過程で、この【HotKeys】が
役に立つことを心から願っています。

【MT5】バックテストのヒストリー品質を0%から100%にした話

Dukascopyで落としてきたヒストリカルデータを

例のUTC+2に書き換えられるスクリプトで変換してから

 

MT5にインポート、バックテストを行うと、

 

f:id:metroporeturn:20210915174106p:plain

ヒストリー品質が0%

何度試しても、ヒストリー品質が0%だった。

 

 

日本語サイトや読めない英語サイトを調べ漁った結果

結局は公式ページに一番参考になるヒントが書いてあった。

www.metatrader5.com

 

History Quality(ヒストリー品質) — この値はテストの価格データの質を特徴付けます。それは1分間のデータの正誤のパーセンテージ比率として決定されます。ゼロスプレッドまたは異なるOHLC値を持って数量が1に等しい足は正しくないと考えられます。履歴ギャップはまた、不正なデータとして考えられます。サイズに応じて、テスト期間は1~199 に分割されます。ヒストリー品質はその個々に決定されます。ヒストリー品質のグラフィック指標では、時間間隔は異なる色で表示されています(軽い緑の色合いはより良い品質を意味し、赤は品質が50%以下の間隔を表します)。

 

原因は、ボリューム(出来高)とスプレッドの値にあるみたい。

 

 

早速データを見てみると、

 

f:id:metroporeturn:20210915174830p:plain

品質の悪いデータが赤く示されている

赤くなっているデータがちょこちょこ。

 

ということで

  • ティックボリュームを0以外にする(※1)
  • スプレッドを5~10にする(※2)

これらを解決策に設定。

 

↓やったことを箇条書きにするとこんな感じ。

 

  1. Dukascopyからhst形式のデータをダウンロード
  2. 例のスクリプトでデータのタイムゾーンUTC+2に変換
  3. MT4にインポート
  4. MT4から、csv形式でエクスポート(ファイル名:from_mt4.csv)
  5. Ubuntuで以下2つのコードを順に実行
    「sudo nkf -Lu --overwrite from_mt4.csv
    「sudo sed -i -e "s/$/,0,5/g" from_mt4.csv
  6. from_mt4.csvをMT5にインポート

 

 

f:id:metroporeturn:20210916111943p:plain

Ubuntuでのコマンド入力(別日のスクショなのでファイル名は変わっている)

 

 

すると、、、

f:id:metroporeturn:20210915190408p:plain

赤く強調されていたのもなくなった!!

 

品質の低下を示す、赤い強調がなくなっているではありませんか!

 

早速このデータでテストをしてみると、

 

 

f:id:metroporeturn:20210915191511p:plain

ヒストリー品質100%達成

 

無事、ヒストリー品質が100%に。

 

 

Ubuntuで入力したコマンドはこちらのサイトを参考にしました。

www.dogrow.net

 

 

 

お疲れさまでした。

 

 

 

※1

出来高が戦略の要素になっている場合は、ティックを操作するのはEAの精度に悪影響を及ぼす可能性があります。

 

※2

スプレッドは適宜変えてもいいと思います。

 

より広いスプレッドでも右肩上がりの資産曲線を描けるEAが優秀なのは
当たり前ですから、できるだけ幅広にするのもいいと思います。

 

僕も普段からスプレッドは10ポイントくらいで開発しています。

mql5ソースコード(自由に使ってください)

※2021/09/03更新

ソースコードの公開を停止しています。

スクリプトやインジケータは以降コチラで公開します。

www.gogojungle.co.jp

 

 

 

関数を一つ一つのソースファイルを分けて
動作を検証しながらロジックを書いていました..

 

そのうちどんどんファイルが増えてしまったので,
クラスにまとめて管理することにしました.

 

その過程で不要になったソースコードやファイルを公開することにしました.

 

自分で書いたコードなので我が子のよう...ではないですが,

捨てるのももったいないなと思ったので,
勉強を始めたばかりの誰かのためになるのではないかとおもっています.

 

僕ももともとは他人の書いたコードを自分なりに読んで,

リファレンスを参照して勉強したので,同じような過程にいる方や

初学者さんに有効に活用してもらえたらと思います.

 

ただし,全くと言っていいほど各ファイルやソースコードを説明していないので

自力で読んで応用できる方向けではあります.

質問にも答えられません.あしからず.

 

著作権もくそもありません.好きに使ってください.

(2021/09/03以降、アクセス制限をかけています。)

drive.google.com