私と私の猫の他は誰でも隠し事を持っている

野良プログラマ発、日々のアウトプット

プログラミング

Pandas 演習としてのテクニカル指標計算【最終回】 〜 MA-RCI (オリジナル)の巻

このシリーズも今回で10回目。ネタが尽きてきたというか、指標計算に関してはわりとこなれてきた感もあるのでこれで最後にします。最終回記念としてお題は既存のテクニカル指標ではなく、先ごろ考案したオリジナル(たぶん)のトレンド系指標です。アイディア…

Pandas 演習としてのテクニカル指標計算 〜 ストキャスティクスの巻

今回のお題はユーザの多いストキャスティクスを。直近の一定期間における値幅(最高値-最安値)中の終値相対位置を元に、「売られ過ぎ・買われ過ぎ」を表現するオシレータ指標です。詳細は下記を参照下さい。www.sevendata.co.jp計算に使う株価データは毎度お…

Pandas 演習としてのテクニカル指標計算 〜 平均足の巻

今回は指標とはちょっと違うかもしれませんが、平均足をお題に。ローソク足にした時にトレンドが把握しやすいよう始値・高値・安値・終値それぞれを調整したもので、国産の指標だそうです。詳しい説明は下記あたりを参照して下さい。www.sevendata.co.jp計算…

Pandas 演習としてのテクニカル指標計算 〜 DMI の巻

シリーズも7回目なので今回は少し難易度を上げて、DMI という七面倒な計算が必要なオシレータ系指標にチャレンジ。それに、これまでは日足の終値を材料として計算する指標ばかりでしたが、DMI は高値・安値を積極的に活用するという特色があります。DMI につ…

Pandas 演習としてのテクニカル指標計算 〜 コポック買い指標の巻

10連休短けぇ… もっと色々やりたかったのに… と萎える連休最終日、ブログでも書いて締めますかね。今回は「コポック買い指標」というちょっと聞き慣れないやつを取り上げてみます。これは、月の平均株価を前年同月と比較して騰落率を算出しておき、さらにそ…

Pandas 演習としてのテクニカル指標計算 〜 RCI の巻

東証も前代未聞の長いお休みに入った10連休3日目、いかがお過ごしでしょうか。そんな今回は RCI を。順位相関指数と言うやつで、N 日間の株価について昇順に順位を採り、時系列に沿って 1, 2, … N と順当な上昇であれば 100% に、逆に N, N-1, … 1 と下降な…

Pandas 演習としてのテクニカル指標計算 〜 ボラティリティの巻

今回はボラティリティを。価格変動の激しさを捉える指標ですね。「変動」といっても見方は様々で、前回のボリンジャーバンドで算出した株価の標準偏差も「個々の株価と一定期間平均とのバラツキ度合い」なので変動のいち表現と言えます。いっぽうで「前日と…

Pandas 演習としてのテクニカル指標計算 〜 ボリンジャーバンドの巻

シリーズ3回めはボリンジャーバンドを。個人的には最も使用頻度が高い指標かも。日経平均プロフィルさんから株価データ取得のコードはここでは割愛。シリーズ第1回目を参照ください。まずバンドの中心ラインとなる単純移動平均を算出し、同日数での株価標準…

Pandas 演習としてのテクニカル指標計算 〜 MACD の巻

珍しくやる気になってるので、鉄は熱いうちにという訳で今回は MACD の計算でつ。長短2本の指数平滑移動平均の差分をとり、さらにその移動平均をとったものとの差分が売買シグナルになるというオシレータ系の指標です。個人的にはどうも意味合いというか使い…

Pandas 演習としてのテクニカル指標計算 〜 移動平均の巻

Jupyter Notebook 上で主にシストレをテーマにしたデータいぢりを始めて1年あまり経ちますが、いまいち NumPy・Pandas・Matplotlib がマスター出来た気になれないので、公開しながら演習することにしました。プライベートのスニペットバンクにちまちま書き溜…

「INSERT … SELECT … WHERE NOT EXIST …」を少し深掘りしてみた

MySQL で INSERT する際に、所定条件のレコードが既に存在しない時のみ行いたい、ってのはよくある要求のようです。調べたら、こんなハック↓で何とかなる模様。stackoverflow.com成る程、INSERT … SELECT 構文の SELECT を工夫する訳か。ただ自分の場合、上…

気象庁の各地気圧データから箱ひげ図を描いてみる

昨年末あたりから Jupyter Notebook を触り始めてすっかりハマってます。Python の豊富な DS ライブラリを使ってのデータ加工・集計・分析・可視化等を Web U/I 上でトライ&エラーできる柔軟さが素晴らしすぐる。発想にまかせて自由気ままにデータいじりす…

コンパクトな PHP テンプレートエンジン、Latte を使ってみた

Yet Another PHP Template Engine な話。とある PHP システムを作っていて、動的に与えられるテンプレート構文にデータを適用させて、断片的な HTML コードを生成させたい、という要件がありまして、 Twig や Blade だと大袈裟というか、かさばりそうなので…

PHP Trader 関数を使ってみる - ATR トレーリングストップの巻

忘れた頃にやってくる PHP Trader 関数シリーズ。今回は ATR (真の値幅の移動平均)を算出する trader_atr() を取り上げるのですが、ただ計算させるだけじゃつまらないので計算結果を元に損切りラインを導出して売却指示をさせてみます。所謂「ATR トレーリン…

「ジブリの呪い」を検証してみた

先日こんなツイート↓【練習問題】(続き)「ジブリの法則」に基づく投資が有効であるかを検証して下さい。「ジブリ作品放映日の大引け間際に225の信用売りを入れる」スタイルを繰り返した場合、何%の確率で利益を出すことができるでしょうか?ジブリ作品の…

PHP Trader 関数を使ってみる - ボリンジャーバンドの巻

前回の続きで、今回は trader_bbands 関数でボリンジャーバンドを算出してみます。ボリンジャーバンドは、移動平均に標準偏差を重ね合わせただけの指標ですが、直観的だしトレンドやボラティリティがひと目で分かって便利なので、自分もよく使っています。tr…

PHP Trader 関数を使ってみる - 移動平均の巻

明日からの週明け市場は日経平均1万7千円台回復か? 等と今日の産経ニュースに載ってましたが、はてさてどうなりますか。という訳でご無沙汰しております、細々とシストレなぞもすなる野良プログラマ Mariyudu です。プログラマさんがシストレする時にどん…

D3.js でローソク足チャート描くなら TechanJS がイイ!(かもしんない)

最近、データ分析の真似事をしたくなって、どうせやるなら実益も目指せる株取引を対象に、とごにょごにょ始めたりしています。そこで必要になるのが、データの「見える化」。ローソク足チャートをベースに、諸処の分析結果を作画して「ほほー」等と言ってみ…

Redis で FIFO バッファを作って PHP から使う

昨今じゃ当たり前になった NoSQL ってやつですが、自分はどうも使う機会が無かったというか、フツーに RDB 使ったほうが目的に叶うケースが多かったので memcached でさえ殆ど手を触れずに今日まで来ました。それがやっと先ごろ、NoSQL なシチュエーションが…

【AWS EC2】bash プロンプトにインスタンス名を表示する

インフラ屋の皆様、年末年始に向けたサーバ増強はお済でしょうか。そんな貴兄に EC2 関連の小ネタです。スケールアウトなんかを目的としてクローン・サーバー・パターンを実施するとき、同じ AMI から立てたインスタンスだと bash のプロンプトもぜんぶ同じ…

MySQL データベースからテーブル定義書を生成する

ネクタイ締めて SE らしきものをやってた頃はコードよりドキュメントのほうを山のように書いてたもんですが、限りなくプータローに近いフリーの身になってからはそんな苦行も今は昔… と言いつつ、タマに「DB の仕様書下さい」「ダンプした DDL でいいっすよ…

Closure Compiler Service API を使って JS コード圧縮コマンドをサクッと作る

某ブロジェクト@おしごとで比較的まとまった量の JavaScript コードを書いたんですが、これってモバイルからの利用も想定してるし圧縮・最適化をかけた方がヨイよなー、ということでその方面のツール等を物色してみました。Web I/F 上で利用できる圧縮サー…

apns-php で APNS のフィードバックを受け取る

以前書いた「apns-php のログ出力をオフにする」の続編というか姉妹編というか。iOS デバイスへのプッシュ通知サービスを構築していると、「削除(アンインストール)されちゃれったアプリへの通知ってどうなるの?」という問題に突き当たります。で、調べてみ…

TinyMCE エディタ上で画像をアップロードしながら貼り付けられる jbimages プラグインを使ってみた

HTML 等の知識が無くても Web ページ上でコンテンツを作成・編集できる、JavaScript 製の WysiWyg エディタって便利なものがあります。TinyMCE あたりがデファクトスタンダードかと思いますが、最近これを使って画像をサーバにアップロードしながら貼り付け…

DB 問い合わせ結果の配列を、主キーを配列子にしたものに組み替える for ぺちぱー

いや、ホントにもうタイトルのまんまですが。 $records = array_combine( array_map(function($record){ return $record['id']; }, $records), $records );昔からのクセで foreach で回す関数とか書いてたけど、考えてみたら最近の PHP はクロージャ書けるの…

apns-php のログ出力をオフにする

今年もまた、夏到来とともに修羅場カモーン!で「夏休み? なにそれおいしいの」とイタイケな Mariyudu@野良プログラマです。ご無沙汰してます。時代の流れってやつですかね。ロートルな私にもスマホアプリ絡みの仕事がちらほら来るようになって、プッシュ通…

デフォルトから気分一新! な Redmine のテーマ7選

プロジェクト管理および構成管理で Redmine の出番が増えてきました。しがないフリーの立場での仕事なので Redmine サイトもお客さん毎に複数立ち上げたりしてます。んで、ブラウザのタブで切り替えながら並行作業してるとどっちの Redmine サイトだったか混…

Silex + Twig : テンプレート中で PHP のスーパーグローバルにアクセス

Twig ネタふたたび。テンプレート中で PHP のスーパーグローバル($_GET とか $_SERVER とかのアレ)を表示したいケースがあって、ルーティングプロシジャ毎の render でいちいちセットするのもちょっと切ないので、もうちょっと簡素な処理で何とかならないか…

Twig と PHP マジックメソッドでのプロパティ

PHP ネタ。マジックメソッドで実装したプロパティが、Twig のテンプレート中ででうまく表示されなかった。Google 先生に尋ねたら、ちゃんと __isset の方でも true を返すようにしなさい、とのこと。 class Hoge { public function __get($name) { if ( $nam…