マーケットの API を使用してマーケットに注文を出す取引アプリケーションを設計中です。これは、投資銀行に見られるような複雑で高性能なアルゴリズム取引アプリケーションではありません。これは、市場の状況/トレンドに応じて、おそらく 1 日に 2 ~ 3 回取引する小さな個人用アプリケーションです
アプリケーションは、(大まかに) 次のモジュール/パッケージで構成されます:
戦略
- 実際の取引アルゴリズム
分析
- 取引を分析するためのクラス売買シグナルを生成するための市場でのライブ価格と注文
サービス
- 市場への接続を維持し、市場情報を取得し、売買注文を出すために使用されるクラス。
これまでのところ、アプリケーションに必要なものはすべてインターネットで入手できるようです。
*市場の Web サービスにアクセスするために使用される Java クラスを生成するためのApache CXF 。
*価格分析を実行するためのApache Maths
*さまざまな設計パターン (Factory、Subject/Observer、State など) の
Wikipedia 。
しかし、私が本当に行き詰まっているのはアルゴリズムです。State パターンを使用して、特定の市況が満たされたときに実行する必要があるさまざまなロジックを論理グループに分割することにしました。問題は、各状態クラスに if else ステートメントの爆発が含まれる可能性が非常に高いことがわかり始めていることです。
if(this_condition) {
// do something
} else if (another_condition) {
// do something else
} else {
// etc..., etc...
}
ここで何かが欠けていると感じずにはいられず、開発者が特定のビジネスコンテキストのすべての入力と出力を有限数のビジネスルール[アルゴリズム]を構築できるビジネスアクション[入力/出力]。つまり、アルゴリズムをハードコーディングするよりも、アプリケーションをある種のルール プロセッサにすることができるようになることを望んでいます。残念ながら、これをどこから始めればよいかわかりません。私のジレンマを十分に明確に説明したことを願っています。何か明確にしたい場合はお知らせください. ありがとうございました