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

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

来訪ありがとうございます
シストレツールを自作してました
自分用の記事が多いのであまり役には立たないブログでした

f:id:sucar:20150414193802p:plain

自作システム詳細目次

マニュアル 基本コマンド1 su/car (-b)

(2015/12/4 追加 -pオプションによる Protra起動)

基本中の基本のコマンド su/car (-b) の説明

オプション -b は付けても付けなくとも同じ

stocks dir に当日の株データを放り込んで

home dir で

$ su/car 

とコマンドを打ち込み待つこと数分

そうすると、明日のトレードどうするか? のシグナルを含むレポートが表示されます

日々の運用はこれだけw 非常に簡単

コマンドの実態はshell scriptで su dir にある car

car は単なるスイッチャ―で  getopts を使ってオプションによって別の実体コマンドを呼び出しているだけです

car の中身は以下のとおり

#!/bin/bash
echo cd `dirname $0`
cd `dirname $0`
pwd

b=1
while getopts bmwhd012345 opt
do
case $opt in
  b) b=1 ;;
    m) echo carmk
    b=0
    ./carmk ;;
  w) ./car_w
    b=0 ;;
  h) echo help
    echo b carbuy
    echo m carmk
    echo w car_w
    echo h help
    echo d data1000
    echo 0 05cy 1 05c4y 2 05c8y
    echo 3 mp16_2 4 mm24_0 5 mm24_test
    b=0 ;;
  d) echo data1000
    ./bin/data1000
    b=0;;
  p) ../Protra/Protra &
    b=0;;
  0) echo 05cy
    ./bin/su7_mt_05cy
    start ./output/rksg.txt
    start ./output/su7_mt_05cy.txt
    b=0;;
  1) echo 05c4y
    ./bin/su7_mt_05c4y
    start ./output/rksg.txt
    start ./output/su7_mt_05c4y.txt
    b=0;;
  2) echo 05c8y
    ./bin/su7_mt_05c8y
    start ./output/rksg.txt
    start ./output/su7_mt_05c8y.txt
    b=0;;
  3) echo mp16_2
    ./bin/su7_mt_mp16_2
    start ./output/rksg.txt
    start ./output/su7_mt_mp16_2.txt
    b=0;;
  4) echo mm24_0
    ./bin/su7_mt_mm24_0
    start ./output/rksg.txt
    start ./output/su7_mt_mm24_0.txt
    b=0;;
  5) echo mm24_test
    ./bin/su7_mt_mm24_test
    start ./output/rksg.txt
    start ./output/su7_mt_mm24_test.txt
    b=0;;

esac
done
if [ $b -eq 1 ]
then
   echo carbuy
 . /carbuy
fi

こんな感じ

やっつけ感ありありでひどいソースだけど動けばいいw

-b option 以外は

-h 超簡単なヘルプ

-m ストラテジーを含むシステムの再コンパイル

-w 本日のデータ位置(別記事であとで詳しく)

-d 1000日分データ準備(別記事であとで詳しく)

-p Protra 起動

-0~5 個別にストラテジーをバックテスト(別記事であとで詳しく)

こんな感じ

-0~5 個別にストラテジーを~

が結構ダサい実装で、ストラテジーを追加するためにはcarを書き換えなければならないw

何とかしたいがまあいいや状態w

追記) txt file の表示に start コマンドを使っていますので、minGW でないと動かないでしょう
    linux の場合 独自にstart コマンドを作るか? 別の方法でやるしかないです