本記事は広告・プロモーションを含みます。たっきん(Twitter)です!僕が自作している自防売買システム(システムトレード)ですが、今まではアプリケーション・パッケージ部分を非公開としてきました。アプリケーションなしでは実際に動かすことができないため、一部のソースコードは公開されていても結局使ってみることができない状態となっていました。doi...github.comアーキテクチャは下図のようになります。アプリケーション公開の際に、GutHubのREADMEファイルも充実させて、シストレを稼働させるまでの手順も記載しました。基本的にはREADMEファイルに記載されている通りの手順を踏むと、自分の環境でサンプル・アプリケーションを動かせるようになるはずです。実際に動かすことができれば、システム全体の振る舞いを把握することができますし、何よりサンプル・アプリケーションを自分で修正すれば、世界に1つだけのオリジナル・トレードアルゴリズムで実際にトレードすることも可能になると思います。しました!名前の由来は「モニター前に張り付かず、怠けていても勝手に稼ぐことができるシステム」をコンセプトにして開発したからです。(笑)※以下、本システムを使用したことによるトレード・スタイルの変化イメージ図になります。目次サンプル・アプリケーションの概要パラメータシーケンス図さいごにサンプル・アプリケーションの概要お試し用サンプルアプリケーションのボリンジャーバンド・シストレですが、ソースコードは下記となります。trade_app/trade_app/app_bb.pyボリンジャーバンドを使ったトレード方法は大きく分けて順張り型と逆張り型の2種類がありますが、今回僕が用意したサンプルは「順張り型」になります。具体的に説明すると、下記の条件でEntry、Exitします。上図の下段に「状態」と書かれていますが、これはチャートに沿った時系列での状態遷移を表しています。状態遷移図(ステートマシン図)は下図のようになります。パラメータ今回作成したボリンジャーバンドのサンプルアプリケーションでは下記3つのパラメータで稼働するように作りました。300上記6項目についてはROSパラメータとして定義しているので、直接ソースコードに変更を加えることなく、数値を変更できるようにしています。ROSパラメータを定義しているのは下記のYAMLファイルです。Param名と各パラメータ項目の関係性は下表の通りです。利確幅(pips)のリストapp_bb.pyでは上記ROSパラメータを読み込むと、SMA値、STD値、利確幅(pips)のリストの要素数に応じてTradeItemインスタンスを生成します。簡易的なクラス図で説明すると下図の通りです。シーケンス図シストレ全体のROSノードとメッセージ間の繋がり及び、処理の流れを表現すると下図のようなシーケンス図となります。下図のシーケンス図はあくまでもROSノードとメッセージしか表現しておらず、各クラスやメソッドまでは記述していません。本来は各クラスやメソッドまで表現すべきと思いましたが、そこまで記述すると図が複雑になり、逆に理解しずらくなると思いましたので省略しました。参考までに、シストレ稼働中のROSノードグラフは下記のようになります。Trader」としてリリースしました。今まではアプリケーション・パッケージ部分を非公開としていたので実際に動かすことができなかった人がほとんどだと思います。稼働させるまでの手順もわからない人が多かったと思いますので、GitHubのREADMEファイルに作動させるまでの手順を記載し、手順通りに進めれば誰でも稼働させることができるようにしました。詳細な設計資料等は不足している感は否めませんが、一旦はお試しレベルで稼働させて全体的な動きを確認できるくらいにまではなったんじゃないのかなぁと思います。これからも設計資料等は順次作成してGitHubで公開していこうと思っていますので、少々お待ちください。使い方がわからないなどあったら、このブログかツイッターの方にメッセージいただければと思います。前回までにざっくりとでしたがシストレ・アプリケーションのアーキテクチャ設計まで完了させることができました。前回に引き続き、窓埋めトレードのアプリケーションを作り込みを行っていまして、今回はQtでヒートマップを作成し窓埋めトレードの勝率を可視化できるようにしてみました。前回は状態遷移表を作成して注文情報を管理する「order_manager」ノードの作りこみを行いました。先日ツイッターでつぶやいた通り、自作シストレにバグ(不具合)があることが発覚し、急遽バグ修正とシストレ・パラメータの見直しを行いました。【シストレ開発#2】ROS2の独自メッセージ型を作成してみた!ROSがそれなりに使えるようになってきました。ROSを使ったシストレ開発ブログ第2弾です。今回の記事はブログというより、ROSの使い方の備忘録的な感じで書いていこうと思います。【シストレ開発#25】[中間報告]シストレ運用状況(2023年3月)バグ修正後は順調に稼働しています。前回は自作の自動売買システム(システムトレード)にバグが見つかり、急遽バグ修正とパラメータの見直しを行いました。コメントをキャンセルメールアドレスが公開されることはありません。Trader」の開発・運用状況を逐次公開しています。ソフトウェア開発の仕事を10年以上経験してきたこともあり、僕が持っているプログラミングやシステム設計などのノウハウも公開しています。最終的には自作のシステムトレードで不労収入生活を送ることが目標です。資産運用状況や自作システムトレード開発の進捗ブログを気ままに書いていますので、よかったら覗いていってくださいね!スポンサーリンクX(旧Twitter)たっきんに興味ある方はぜひフォローお願いします。takilogX(旧Twitter)たっきんに興味ある方はぜひフォローお願いします。コメント目次へトップサイドバータイトルとURLをコピーしました。