LoginSignup
1
0

Plotly-Dashを使ってトレードのバックテスト用ダッシュボードを作成してみた

Last updated at Posted at 2024-03-21

Trade Simulation Dashboard: CSVデータからトレード戦略を分析・可視化するWebアプリ

はじめに

システムトレーダーや暗号資産トレーダー(botter)の方向けにCSVファイルからトレードデータを分析・可視化するためのダッシュボードアプリを今回作ってみました。
リポジトリはこちら:https://github.com/ammtjm/Trade_sim_DashBoard

[2024/3/27追記]pandasデータフレームを入力として扱えるようになりました!また、出力結果をエクセルファイルでテーブルとして保存できるようになりました。

本アプリは、トレード戦略の分析において、対象資産の価格、ポジションの保有・解消のタイミングとその時の数量を元に、シャープレシオ、リターン、ドローダウンなどの評価指標を計算し、これをインタラクティブかつ簡便に表示することを目的としています。

(matplotlibでリターンの折れ線グラフを描画するなどSNS上でよくみるあのグラフに物足りなさを感じていたので、よしやってみようと思っただけです。)

イメージ画像
こういうの

作成したダッシュボード画面

今回作成したダッシュボードがこちらです。

image.png

ダッシュボードのイメージはGrafanaをネット検索してパクりオマージュしてみました。

主な機能

  • インタラクティブな可視化とメトリクスの表示
  • シンプルで一枚絵のダッシュボード
  • トレード戦略のパフォーマンスと買い持ち戦略の比較

使用技術

  • Python
  • Dash
  • Plotly
  • Pandas

詳細はGithubを見ていただきたいのですが、それとは別に今回コーディングの大部分はClaude3を使って書いてみました。ちなみにGithubのREADMEも大部分を書いてもらいました。Claude3の書くアプリ説明だとなんか凄そうに見える不思議です。また、使っていてコードの正確性やユーザの意図を汲む能力などGPT4より優れていると体感しました。

改善の余地

今回初めてトレード用のダッシュボード作成に取り組んだこともあって、これにはまだまだ改善の余地があると認識しています。例えば、

  • 取引手数料の実装
  • 他の保存済み戦略との比較機能

といった具合に。

フィードバックと貢献のお願い

上述したようなところですので、他の方々からのフィードバック、提案、批評を歓迎しています。コードベースの改善、パフォーマンスの最適化、新機能の追加などのアイデアがありましたら、ぜひご共有願えますと幸いです。

GitHubのIssue、プルリクエストをお待ちしております。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0