OANDA FX シストレ④コードの改善点メモ

67コードの改善点

ai.py __init__

self.optimized_trade_params = Noneのとき

self.update_optimize_params(False)をしてデータをため込んでからトレード実行

 

streamdata.py

 stream = StreamData()

グローバルに宣言しているが、シングルトンなどつかってスレッド情報と並列にコマンドを実行。スレッドセーフ。

 

candle.py

データをどんどん書き込んでいるがデータベースが膨れ上がるので、古いデータは削除する。

 

dfcandle.py

def optimize_params(self):

で5つの処理を行っているが、並列処理してもいいかも。
ema_performance, ema_period_1, ema_period_2 = self.optimize_ema()
bb_performance, bb_n, bb_k = self.optimize_bb()
ichimoku_performance = self.optimize_ichimoku()
rsi_performance, rsi_period, rsi_buy_thread, rsi_sell_thread = self.optimize_rsi()
macd_performance, macd_fast_period, macd_slow_period, macd_signal_period = self.optimize_macd()

 

oanda.py

今回オアンダAPIを使ったが、他社APIを使ってもOKです。

 

requirements.txt

Flaskでなくてジャンゴとかでもいい。

webログインサインアップ機能。プラグインも豊富。

SQLAlchemyを使ったが、ジャンゴにはORマッパーなどが付属している。

データベースのハンドル。

 

chart.html

jqueryを使ったがリアクトとかjavascriptとか他のフレームワーク

 

settings.ini

パラメータいじるのもOK

 

dfcandle.py

optymize_params関係

ストラテジの改変