株式投資」カテゴリーアーカイブ

Rubyの例外処理 <株入門>

あ、もう一つあった、ファイル操作に関連して例外処理を行っていた。 これに関しても言及しておこう。   ええと、Rubyの例外処理はtry/catchではない。紛らわしいったらありゃしない。 begin/rescueという構文。 これがほぼ、C++やJavaのtry/catchと一緒。 話が早いので引用してしまおう。 begin  yield rescue Errno::EACCES  puts “#{file_name} が … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

集計結果を出力しよう。Recorderクラスでファイル操作 <株入門>

もう一息ですね。 集計結果を体裁整えて、ファイル出力出来れば、システムとして一通りカバーでしょう。    Recorderクラスの仕事は以下だそうです。 ①1銘柄の取引を記録する ②銘柄ごとの統計の一覧表を作る ③すべての銘柄のすべてのトレードを統合した統計を記録する ④設定ファイルを保存する 銘柄ごとtradeごとの記録、 ロジック(TradeingSystem)単位集計した銘柄ごとの記録、 ロジック(TradeingSystem)単 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

あ、Nilのときだけ値設定するというやり方は、、先に進む前にもう一つだけ、 <株入門>

先に進みたいのですが、留意点がひとつあり、言及します。 これは以前にも、不具合の元となったことで、  ./lib/stats.rbで言うと、 def profits  @profits ||= @trades.map {|trade| trade.profit} end このやり方です。 profitsにまだ値が設定されてなければ、計算する。 既に値が設定されていれば、その値を返す。 ってことですが、 こんなやり方してるのは、毎回計算す … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , , , | コメントする

R倍数のおさらい、Tradeクラスのおさらい <株入門>

もう一度R倍数について、 トレードを仕掛けたときに入れる最初のストップと、仕掛けた値段の差がRの値だ。 例えば、1000円で買い仕掛け、初期ストップを900円に置いたとすると、R値は100になる。 そのRの何倍の利益があったのか、というのが、R倍数だ。 1000円で買い仕掛け900円に初期ストップを置いたトレードで、 1200円で手仕舞ったとすれば、R倍数は2だ。 「2R」というような書き方をする。 リスクに見合うリターンの度合いという … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

シミュレーションの結果を集計する <株入門>

次のステップに進もう。 ようやく、シミュレーション自体は出来た。 その結果を処理せなアカン。 そこで、Statsという統計処理を行うクラスを用意する。   以下の集計を行う。 ●合計損益 ●平均損益 ●勝ち数 ●負け数 ●分け数 ●勝率 ●プロフィットファクター ●合計R倍数 ●平均R倍数 ●合計%損益 ●平均%損益 ●平均保持日数 ああなんかもう忘れてる。R倍数とか、PFとか、、   ま、これくらい計算してくれたら、判断出来るだろうと … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

TradingSystemの使い方 <株入門>

  ここにきて、使い方が判明した、仕様上の留意点もあり、疑問点もあり。 目出度くもあり、不満もあり、 ま、いずれにせよ、 ./check/trading_system_check.rbを引用した方が話が早いな。 def simulate(code)  stock = @data.generate_stock(code)  @trading_system.set_stock(stock)  @trading_system.calculat … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

TradingSystemの動作検証 <株入門>

さて、TradingSystemの説明はこれで終わり。 これまでと同様にテストする。   ./check/trading_system_check.rbを動かす。 解説を読む前に、期待通りの動きをするか先に確認しちゃおう。   データは前と同じく野村ホールディングス。 ただし期間は2010/01から2011/08まで、   データを作る。 ./bin/get_price_data.rbを改造して、実行。 こんな感じ。   # codin … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

手仕舞いのフィルター? <株入門>

TradingSystemの手仕舞いの処理がちょっとヘン。という話を。   check_exit(trade, index)の中身は、 セットされたExitのメソッドcheck_exit(trade, index)を順次呼び、 シグナルが出れば手仕舞う。   というのが基本。というのが昨日までの成果。 ところが、 exit_filterという概念を唐突に導入してる。 引用した方が早い。 exit_filter、すなわち手仕舞いフィルター … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

日々のストップ設定と手仕舞い <株入門>

引き続きTradingSystemの日々の処理。 日々のストップ設定であるset_stop(position, index)の内部は、 tightest_stop(position, index)を呼んでストップをセットするだけ、   tightest_stop(position, index)の中身は、 現在設定されてるストップと、セットされてるStopから算出される値のうち、 最も厳しい値を返す。 最も厳しいとは、 買いのときは高値 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

仕掛けの成立までの処理の流れ <株入門>

前回の続き、 処理の流れは、以下。 1.check_entry(index)  indexの日に、フィルターをくぐり抜けて、シグナル発生してれば仕掛け。 仕掛けがあれば、tradeを生成して仕掛けを実行。 2.set_stop(position, index)  indexの日のストップをpositionに設定。 3.check_exit(trade, index)  indexの日に、手仕舞うシグナルが発生してれば手仕舞う。   詳細 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする