株式投資入門はじめました2016.05」カテゴリーアーカイブ

移動平均乖離率、実装するぜ!! <株入門>

プログラムな話じゃなくて、トレードの話できて嬉しい。 ./lib/indicator/estrangement.rbを早速眺める。 実装はそっけない。 日足の終値の時系列データから、引数で指定した期間の平均値を求め、 期間の最後の日の終値との乖離率を求める。 乖離率=平均ー最後の日の終値)/平均    をパーセント表示なので、100掛けてます。 プログラム的には、無味乾燥な話。 が、 日々、チャート眺めてて、その日の終値と移動平均の乖離 … 続きを読む

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

やっと移動平均の実装 <株入門>

ようやく、進みます。 早速./lib/indicator/moving_average.rbを観てゆきます。 大変そっけない、コードです。 でも、ちょっと複雑なことやってます。 1.コンストラクタ   生成するときにはStock(株情報)と以下の情報を渡す。  四本値のどれを使うか(指定がなければ終値)、  移動平均の区間。  ※ちょっと気に食わないのだが、それは後で。 2.calculate_indicatorの実装  Stockから … 続きを読む

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

実装したインジケータの読み込み、Rubyのダサさに呆れる。 <株入門>

やっとインジケータの実装に進みます。 でも、もうひとつだけ、準備があります。   ●移動平均 ●移動平均乖離率 ●移動平均の方向 ●真の値幅の平均(ATR:AverageTrueRange)  を実装するとのこと。おお、期待高まる。   で、最初に約束ごとの確認。 今までどおりのネーミングルールに準じること。 Indicatorの子クラスとしての実装すること。 ま、当たり前だ。   あと、 長短二本の線のクロスとか、複数の指標が必要な場 … 続きを読む

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

抽象的なIndicatorクラスのテスト <株入門>

あ、Indicatorという親クラスのテストやってましたね。 ./check/indicator_check.rbですが、 内容は、   具体的な子クラスをダミーで用意する。 newでコンストラクタが呼ばれますが、Indicatorは引数にStockを要求する。 ダミーでは使わないので、nilを敢えて渡している。 ダミーでは、配列を返すだけという実装をcalculate_indicatorに施す。 Indicatorのcalculate … 続きを読む

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

オブジェクト指向とRuby<株入門>

先に進む前に、ちょっとだけ面倒くさい話。 トレードと関係ないけど、前回のつづき、   オブジェクト指向のクラス継承という考え方を、そのまま利用してる場合と、 それに似た、Ruby独特の機能である、Moduleのインクルードの利用。 クラス継承だけでも代価出来るような気がします。 ただ、オブジェクト指向そのものの弱点でもあるのですが、 継承関係は重く、複雑になるとと手に負えなくなります。 例えば、通信機器という親クラスがあって、そこから電 … 続きを読む

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

EnumとModuleという難関。インジケータに進む前に <株入門>

移動平均とかインジケータの実装について、 やっとサクサク進むかと思いきや、 なかなかどうして難所に差し掛かりました。 ハッキリ言いますがRubyはやさしい言語ではないです。 慣れた人の使い勝手最優先で、 便利な分、複雑だったり、 簡潔に書ける分、わかりにくかったり、 自由な分、同じ処理を様々な記述が可能だったり、 慣れるまでは、とても面倒くさい言語です。   キャッチコピーに騙されちゃいけない。 今日紹介する部分はよく分からないことがあ … 続きを読む

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

様々な指標、単純な機能でも応用は効く <株入門>

前回、ようやく配列を拡張して移動平均線を実現出来るようになった。 機能は単純で限定的に見えるが、さにあらず、 意外と応用が効くものである。 坂本タクマ先生、 当然の如く実装後にテストをちゃんとするのだが、 単純な動作検証に終わらないところが、エラい。   移動平均や、区間高値、安値の基本をチェックした後、 map_indicatorを使って、「何か計算」のバリエーションを試す。 高値と安値の中間は簡単。 前日との増減は、以下のコードで実 … 続きを読む

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

移動平均の為の配列操作の実装 <株入門>

昨日の続きです。 配列を操作して、平均や最大最小を得る。 プログラミング的なことの詳細です。 下記サイトにも書いてあるとおりで簡素な記述が可能。 Rubyで総和・平均・分散・標準偏差を算出するhttp://web-salad.hateblo.jp/entry/2015/02/05/110557 リファレンスを見れば、最大最小はメソッドして提供されてるのでこれを使えばよい。   何故、 min,maxは提供され、sum,averageが提 … 続きを読む

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

配列の処理を拡張する。これで移動平均線に対応できる。 <株入門>

粛々とシミュレーションの実現を目指します。 時系列の日足データを演算処理することになります。 時系列のデータは配列として保存されています。 その配列に対して、 指標となる、最大値、最小値、平均などを計算します。 ボリンジャーバンドなら偏差も必要。    ここでは、Rubyに標準で装備されている配列を表すクラスArrayを拡張します。 これにより、 配列に格納されている時系列データの最大値、最小値、平均など、 簡単に入手出来るようになりま … 続きを読む

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

Tradeクラスの実装 <株入門>

  プログラミング寄りの話に戻ります。 一つ一つのトレードを表すTradeクラスの構造は? 仕掛けと手仕舞いのそれぞれの日付、価格、タイミング(寄り、ザラ場、引け)、 銘柄コード、株数、取引の種類(売りか買いか)、最初に設定したストップ、変更後のストップ、 手仕舞いまでの日数。 をプロパティ(内部データ)として持つ、 ま日数は計算で出せるから要らないと思うのだが、、  で、 損益の結果や、R倍数などを返すメソッドを提供している。     … 続きを読む

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