読者です 読者をやめる 読者になる 読者になる

53歳限界プログラマの憂鬱

SU/CAR-ST-APplication-cellsから派生したプログラマのブログ

本家はこちら↓
f:id:sucar:20151115183011p:plain

SU/CAR-ST-APplication-cellsの安倍野ミックスと申します
来訪ありがとうございます
シストレツールを自作してます

f:id:sucar:20150414193802p:plain

にほんブログ村 IT技術ブログ プログラム・プログラマーへ
にほんブログ村 IT技術ブログ C/C++へ
にほんブログ村 株ブログ 株日記(アフィリなし)へ
←ランキングに
1票お願いします

メタプログラミング的な、、、

現在su/car-st-support-system なる面妖なw自作システムを構築中で、まだまだ未完成なのですが、、、、、

まあ、アプリケーションとしては未完成で発展途上ですが、未完成でも動くことは動くので、もう既に1年間実際に運用して利益を上げたり、損失出したりしています

というか、このままずっと未完成かもしれませんがw

システムトレードのアプリケーションとして完成させるには、売買ルールをどのようにシステムにinputさせるかが難しいところで、自分でスクリプト言語みたいなものを作成しないといけない感じでした

まあ、その部分がメンドクサイ、いや、正直に自分のスキルではちょっと無理なので

「ええい、プロトタイプとして動きゃいいんだから、ソースにそのまま組み込んじゃえ」と

R言語インタプリタなのでまあ「有り」な方式でしょう(というかR言語を使うというのがそんな感じかも)が、

C言語の方もソースにそのまま記述して、パラメタやルールを変更するたびにコンパイルし直す形をとりましたw

まあ、市販ソフトではありえない形式ですが、どうせ自分しか使わないシステムですしと言い訳してましたが、ちょっと思いついたことがあって、、、

現在のシステムのブロック図みたいなものはこうなっています

f:id:sucar:20150329103425p:plain

 

で、C言語だと(正確にはプリプロセッサのcppですが)include文

R言語だとsource文使えば外部ファイルをソースとして取り込めるわけです

なので、

という方式 図にすると

f:id:sucar:20150802074424p:plain

こんな感じで 1つの「ルール&パラメタ記述ファイル」から

と2つのツールが自動生成されるという便利な結果にw

プロトタイプのつもりでしたが、これはこれで便利なのでこのままになりそうです

まあ、変なincludeの使い方で推奨される方法ではないでしょうが、メタプログラムの有効な例ではないかとw

どうせ自分しか使わないシステムですし

参考までにincludeの使い方をググって見つけたブログへのリンク張ります

[C++]おおっと!includeの強引な割り込み!!

※このリンクを参考にしたわけではなく、こんな変なinclude文の使い方は有りなのかな?と思い、あとでググって見つけたものです

 リンク先のコメントにあるように推奨される使用法ではないでしょうけど、メタプログラムとしては「有り」だと思います 特に外部でルールを記述する必要がある場合では

 m4にも興味ありですw

 未完成システムによるシストレ運用はこうして続いていくのでした