メタプログラミング的な、、、
現在su/car-st-support-system なる面妖なw自作システムを構築中で、まだまだ未完成なのですが、、、、、
まあ、アプリケーションとしては未完成で発展途上ですが、未完成でも動くことは動くので、もう既に1年間実際に運用して利益を上げたり、損失出したりしています
というか、このままずっと未完成かもしれませんがw
システムトレードのアプリケーションとして完成させるには、売買ルールをどのようにシステムにinputさせるかが難しいところで、自分でスクリプト言語みたいなものを作成しないといけない感じでした
まあ、その部分がメンドクサイ、いや、正直に自分のスキルではちょっと無理なので
「ええい、プロトタイプとして動きゃいいんだから、ソースにそのまま組み込んじゃえ」と
R言語はインタプリタなのでまあ「有り」な方式でしょう(というかR言語を使うというのがそんな感じかも)が、
C言語の方もソースにそのまま記述して、パラメタやルールを変更するたびにコンパイルし直す形をとりましたw
まあ、市販ソフトではありえない形式ですが、どうせ自分しか使わないシステムですしと言い訳してましたが、ちょっと思いついたことがあって、、、
現在のシステムのブロック図みたいなものはこうなっています
で、C言語だと(正確にはプリプロセッサのcppですが)include文
R言語だとsource文使えば外部ファイルをソースとして取り込めるわけです
なので、
という方式 図にすると
こんな感じで 1つの「ルール&パラメタ記述ファイル」から
と2つのツールが自動生成されるという便利な結果にw
プロトタイプのつもりでしたが、これはこれで便利なのでこのままになりそうです
まあ、変なincludeの使い方で推奨される方法ではないでしょうが、メタプログラムの有効な例ではないかとw
どうせ自分しか使わないシステムですし
参考までにincludeの使い方をググって見つけたブログへのリンク張ります
※このリンクを参考にしたわけではなく、こんな変なinclude文の使い方は有りなのかな?と思い、あとでググって見つけたものです
リンク先のコメントにあるように推奨される使用法ではないでしょうけど、メタプログラムとしては「有り」だと思います 特に外部でルールを記述する必要がある場合では
m4にも興味ありですw
未完成システムによるシストレ運用はこうして続いていくのでした