FXボーグ | テクニカル実験室

テクニカル分析を使った自動売買プログラムの開発に挑戦!

スポンサーリンク

ちょっと気分転換に凹包してみました。

「K-近傍を用いた凹包の計算」という記事を見つけたので時系列データでもやってみました。

USDJPY4Hを凹包するとこんな感じです。

f:id:fxborg:20171107024333p:plain

これを眺めながらどう料理するかを考えているのですが、高値・安値などの判定には使えそうな感じです。

flann1.8.4の注意点

C++の実装を探すとこちらの記事が見つかったので参考にしました。 

The Concave Hull of a Set of Points - CodeProject 

最近傍点を求めるのにflannというライブラリを使用しているようですが、64ビットでビルドすると「左側がクラス、構造体、共用体ではありません。」とエラーが出ます。ググるとこちらの記事に書いてありました。

ヘッダファイルの修正が必要なようです。具体的には「 flann-1.8.4-src\src\cpp\flann\util\serialization.h」 の93行目に以下のコードを追加します。

f:id:fxborg:20171107100232p:plain

これでビルドが通りました。

最後に

そろそろMT5に移行しないとやばそうなのでmql5で書いてみました。時系列データのエッジ抽出などあまり需要は無さそうですが、チャート分析を自動化する基礎になればいいなと思い作ってみました。

今回のアルゴリズムでは、バーが増える度に再計算しているのですが、過去に求めた頂点が変化することもあるので、このあたりを改善して行きたいです。

こちらからどうぞ
/indicators/concave.mq5
/Libraries/concave.dllKaspersky VirusDesk にて検査済み)