プログラマ行進曲第二章

主にソフトウェア関連の技術をネタにした記事を執筆するためのブログ

第1回 AWSコスト削減 天下一武道会にオンラインで参加しました

タイトルの通りで、実際に開催される前から大分話題になっていた第1回 AWSコスト削減 天下一武道会にオンラインで参加しました。

no1.connpass.com

当日オンラインで放送されたもののアーカイブが撮って出しで出されているので、興味のある方はこちらからオンデマンドで見直すことができます。

www.youtube.com

仕事終わりの時間からオンラインで見つつ、途中お風呂に入り*1、最後まで楽しく見ることができました。

この勉強会を見るまでにコスト最適化に関わるような仕事をしたことはないので、生きた知識があるわけではなかったですが、事前に知っていた知識やコストがかかる事例と似た事例が何度も発表ででてくるのを見て、コストがかかりやすいポイントはある程度絞られてくるのかなと見ていて思いました。具体的には以下の様なポイントです

  • まずCost explorerを確認して、一番料金がかかっているところ、ボトルネックを潰していく
  • NAT gateway経由の転送量が多いと料金がすごいことになるのでVPC Endpointを活用する
  • CloudWatchは料金が高いので、用途と運用に応じてログの保存先をS3にし、可視化はAthenaでやるという構成で運用上問題ないか検討する

発表で印象的だったのは、「AWS SAP試験の対策をしていたら似た事例があったからコスト削減ポイントに気づけた」という話です。

AWS Well-Architectedの6つの柱の中に「コスト最適化」が含まれるようになったというのは話として聞いていましたが、実際にこうやって効力を発揮しているんだろうなあということを感じられたのは初なので印象深かったです。

まだまだコスト最適化・削減については自分の中で消化し切れていないので、今回の動画を見直したり、以下の様な書籍を読んで勉強していきたいと思います。

後余談ですが、ライブを見ながらTwitterに流されていて確認できる限りの登壇者の資料をconnpassの街頭イベントの資料ページにペタペタ貼るということをしていました。後で見る人の資料探しを楽にするという意味で、多少は貢献できたかなと思います。


このAWSコスト削減天下一武道会の主催者である西田さんがイベント終了後に記事を書いていたようです。

www.keisuke69.net

*1:入浴中にイベントの動画を見るの、初体験。それくらいには見逃したくなかったのです。ライブの時はアーカイブが残るかどうか分からなかったので。

前職の同僚にプログラミングを教えたという話

大したことではないんですが、少しでもいいから記録を残しておいた方が後々振り返ったりしたくなったときに有益だと思ったので記事の形にして残します。

ふと自分のiPhoneのTwitterクライアントの通知が来ていたのに気づき、アプリを立ち上げて何の通知か確認すると、DMが1通来ていることに気づきました。

ここ最近は普段DMでやり取りする相手もいないので「一体何だろう?」と思い、確認してみると前職の同僚から「Swiftの経験ありますか?もしよければ教えて欲しいです」(意訳)とメッセージが。

正直SwiftはiOSプログラミングに入門した際に必要な分だけしかやったことがなくて、人に教えられる程度のものが備わっているわけではないとは知りつつも、その同僚がどんなことを考えているか何回かやり取りした後、詳しいことを確認するために一回会って話すことにしました。

話しを聞いた人たちの了解を取ってこの記事を書いているわけではないので、機微な情報には触れない程度にザックリとしたことを書くと、以下のようなことが決まりました。

  • iOSプログラミングを始めようと思っている前職の同僚たち*1は各自集まりながら勉強していく
  • 私はアドバイザー的な形でその学習を補佐し、ベストエフォートでサポートする

一回みんなでモブプログラミングみたいなことをして、初めて触れるSwiftがどんなものかを体験するくらいのところまではいけました。

プログラミングを仕事以外で真面目に教えるという経験は中々得られないので、そこが自分にとって魅力的に感じ、まず一回試してみたのですが、結構楽しくてよかったですね。

今後続くかどうかは分かりませんが、可能ならユルユルと続いてもらえるといいなー、なんて思う週末でした。

*1:メッセージを送ってきたのは1人でしたが、話をしたのは複数名でした

2019年のSphinx開発合宿に参加してきました

昨年に引き続き、Sphinxの開発合宿が企画されていたので、それに参加してきました。

sphinxjp.connpass.com

昨年の参加した様子は以下の記事に書いています。

takuan-osho.hatenablog.com

詳細は以下に書いていきますが、総論としてはとても楽しくて参加してよかったということです。

今回合宿をした場所は予約が取れなかった関係で国立女性教育会館ではなく、小田原にあるみんなのスペース Tsuuという場所で行いました。

参加者は私を含めて4名。全員2泊3日というスケジュールで参加しました。

今回やったこと

今回Scrapboxの使い方を教えてもらったので、このブログのネタ出しに使いました。ある程度使ってみて使い方が分かると楽しさが分かってきたので、飽きるまでは使ってみようかと思います。教えてくれた@shimizukawaさん++

scrapbox.io

今回の参加では事前にやろうと思ったことややりたいことがなかったので、Sphinxメンテナの@tk0miyaさんに「何かやれることってありますか?」と聞いたら以下のissueの解消を提案されたのでそれに手を付けました。

github.com

このissueは今までSphinxの内部にあった「websupportという拡張を別パッケージにしたときに画像リソースを移し忘れた」というissueで、websupportに関しては@tk0miyaさんも詳しくないということで、まず動かしてみるところから手を付けることに。

手を付けるために既存のデモアプリを動かしてみるところから始めようとしたら、そのアプリが動かなかったので、まずPRを作りました。

github.com

sphinxcontrib-websupportのissue片付けのため対処

やったことはflask 1.0.xとPython3対応です。これくらいなら普段Pythonを書かなくなった私でも対応出来たのでよかったですね。

これでデモアプリが動いたので、以下の手順で画像が消えたり表示されたりすることを確認し、状況が再現できたのでPRを作り始めることに。

  • Sphinx本体から画像を消す
  • ビルドしたものから画像が消えていることを確認
  • staticディレクトリに画像を入れて画像が復活するか確認

作ったPRはこちらです。

github.com

何回か@tk0miyaさんのレビューとやりとりを繰り返して無事にマージされました!

やはり1つでもいいので成果が出ると気持ちいいですね。

他の参加者の記事

今回の開発合宿では私の他に3名の参加者がいました。その参加者の方たちのイベント参加記事が以下のものです。

tk0miya.hatenablog.com

scrapbox.io

イベントの写真風景

自分で撮った写真だったり、他の参加者のツイートなどをまとめました。何となく雰囲気を見てもらえればと思います。

開発時の風景

Untitled

上は1日目に宿泊場所に到着したときのホワイトボードの様子です。

Untitled

これは1日目の夜遅くの開発時の様子かな?

Untitled

上はリストの要素の変数の中身を変更した時の動作について説明している@tk0miyaさんとその説明を受けている@usaturn氏の図。

休憩したり息抜きしている様子

Untitled

Untitled

Untitled

開発の合間に休憩してギターを弾く(まね)したり、バランスボールや骨盤職人を堪能している図。

Untitled

Untitled

Untitled

Untitled

Untitled

昼ご飯を食べた後、少し小田原城あたりに寄った時の様子です。

食事

今回は全体的に食事が美味しくて堪能できました。

Untitled

1日目の晩ご飯で食べた中華料理屋のメニュー。不思議な味のするソースがかかった豚肉。雲白肉(ウンパイロー)というらしいです。

Untitled

こちらはザーサイ炒飯。むっちゃ美味しかったです。全体的にいいお値段しましたが!

Untitled

Untitled

Untitled

Untitled

Untitled

これらは2日目の昼と夜に訪れたお店のメニュー。このお店も全体的に美味しくて、その割には値段が抑えめで、控えめに言ってもアタリのお店でした。載っている写真だけでなく、唐揚げも美味しかったんですよね!

他の方の写真の引用がほぼ全てになりますが今回作ったScrapboxのページにもっと写真をgyazo経由で掲載しているので、そちらを見てもらってもいいかもしれません。

まとめ

最初の方に総論として書いたとおり、今回は昨年以上に快適に開発作業ができて成果も出せたのと、リラックスして楽しめたのもあって参加してよかったなーと強く思いました。

PRを作って出した点が@tk0miyaさんのブログや@shimizukawaさんのScrapboxで言及されてお礼が書いてあったのを見て、少し嬉しくもなりましたね。

昨年7〜11月は手術後の体調の悪さで今回開発合宿に参加するのは無理かなと思っていましたが、体調も回復して参加できたのでその点でもよかったです。

あと、@shimizukawaさんにScrapboxの使い方を教えてもらって普段の生活に活かせそうなくらいには慣れてきたのもいいポイントでした。普段は新しいサービスを導入する機会もないもので。

今回のブログ記事も元々のネタ出しを自分のScrapboxのページにまとめてから書いているのですが、直接ブログに書こうとするよりも捗る感じがしていいですね。

「WILD ARMS」シリーズのボーカルコンサート『Score Re;fire #1 』に参加してきました

WILD ARMS(以下ワイルドアームズ)というRPGのシリーズが昔あったのですが*1、そのシリーズのボーカル曲を対象にしたコンサートが横浜の関内ホールで12/15に開かれたのでそこに参加してきました。

www.score-refire.com

このコンサートの存在を知ったのは2週間前くらいで、下手したら気づかずにスルーしていた可能性があったので、気づけてよかったですね。

ワイルドアームズは私がゲームでメッチャ遊んでいた中学・高校生の時にめちゃくちゃハマって遊んでいたシリーズだったので結構思い入れがあり*2、普段はライブとか行かない人間なのですが、当時を懐かしむ気持ちも相まって参加してみようと思ってチケットを買って行ってきました。

私が買ったチケットは昼講演のもので開場が15:30、開演が16:00とのことでしたが、事前物販が13:00から始まると公式サイトを見たら書いてあり、マグカップのように実用的なものも売ってそうだったので、少し早めに着くようにしてマグカップを一つ買いました。14:00くらいだと人が全然並んで無くて余裕で物販を買えましたが、開演前の時間帯になると大分人も並んでいて、コンサート終了後には売り切れていた物販もそれなりにあったみたいです。

会場内は撮影禁止でしたので、会場前の所の写真などを載せておきます。

Untitled

Untitled

ワイルドアームズのスマートフォンアプリの関係でフォワードワークスの社長が花を贈っているのは分かるんですが、桜井さんが送っているのはスマブラ他でなるけさんと仕事をしている関係からですかね?

大満足したコンサート内容

配られたパンフレットに記載されたセットリストは以下の通りでした。 曲名の後のカッコ内は私の補足で、どのシリーズ・CDで使われていたものか書いてます*3

  • Resistance Line (WA2 OP2)
  • Windward Birds (WA Alter code:F 〇〇戦)
  • Wings (WA3 ED)
  • 葬列 (WA Altercode:F イベント)
  • Zephyrs's (WA2 ED)
  • as time goes by ~僕等は忘れない~ (WA4 ED)
  • Advanced Wind (WA3 OP)
  • 誰がために (WAXF ED)
  • 本気の嘘 (WAXF OP)
  • Lullaby (alone the world)
  • milestone (新曲)
  • 空を見上げる君がいるから (WA4 OP)
  • どんなときでも、ひとりじゃない (WA2 OP)
  • +アンコール曲
    • alone the world (alone the world)
    • 足跡 (WA Alter code:F ED)

Untitled

昼公演アンコールということは、夜公演のアンコールは曲目が違っていたんですかね? 少し気になりました。

詳しいレポートを書こうとすると書き終わらなくて記事がお蔵入りになるという前科を積み重ねているので、自分の感想を中心に書きます。

この章のタイトルに書いたとおり、コンサートには大満足しました。

普段の私は何かの物事に対し、ぼちぼち満足するということは割とあるのですが、大満足するということはほぼ無いに等しいので、今回のコンサートで受けた印象はそれほどまでに圧倒的に私には感じたのだと思います。

何がそんなに圧倒的な印象をもたらしたのかというと、歌手の方たちがゲームリリース当時と比べても衰えを全く感じさせないパフォーマンスの歌を歌ってくれたことでした。

別のゲーム・アニメ系のイベント*4に以前参加したことがあり、その時は音響環境のせいもあったのかもしれませんが、ゲームやアニメで使われている曲よりも断然パフォーマンスが出ていない感じの歌だったりしたことがあったので、「やはりプロでもレコーディングした歌と同等のクオリティをライブで披露するのは難しいんだな」と、ある種期待値を下げていました。

ですが、今回のScore Re;fire #1 というコンサートでは、思い出補正が(私の中で)めちゃくちゃかかっているであろう*5曲の印象に劣ることがないばかりか、ライブならではの迫力が伴った歌唱力で歌を披露してくれていたので、柄にも無く大変感激しました。

特に全15曲中、13曲がメインの歌唱だった麻生かほ里さんは、合間合間にMC含めた休憩があったり、真ん中あたりで織田かおりさんの歌で休む期間があったとは言え、素人考えでは大分負担が高そうな進行だと思ったのに、最初の曲目のResistance Lineから迫力を伴った歌を繰り出し、そのパフォーマンスのまま最後まで歌いきっており、「おそらくこれはプロの歌手でも相当にスゴいことなのでは?」と思うくらいにはスゴかったというのが正直な感想です。

バンドメンバー含めた出演者の方はワイルドアームズを意識したウェスタンスタイルな服装をしていたり、麻生かほ里さんはガンベルトを着用して時折銃(のレプリカ)を取り出すという細かな演出がワイルドアームズらしさを感じさせるのも大分よかったです。

しかし、バンドメンバーの方が着用していたテンガロンハット、あれは公式に運営側で用意されたものなのか、それとも自前のものなのか、自前ならどれくらいの負担だったのだろうか、などと余計なことを思わず考えたりしてしまいましたね。どうだったんでしょうか?

もっと色々書けることはあると思うのですが、時機を逸してもしょうがないのでこれくらいで締めます。

何にしても久し振りに大満足できるイベントだったので、イベント関係者の皆様に感謝しています。

上の引用からも分かるように、次回公演も予定されているのでしょうから、次も楽しみにしています。

*1:最近スマートフォンアプリで新作が出ましたが、これが後の動きに続くか分からないので「あった」という表現にしています

*2:その思い入れについて書き始めると長くなるので割愛。

*3:ネタバレに当たりそうなものは一応伏せてます

*4:名前は伏せます

*5:なんせ10〜20年前の作品なわけですし

WIP: builderscon tokyo 2018 に参加してきました

builderscon tokyo 2018に参加してきたので、聞いてきた発表の感想などを軽くまとめておきます。

builderscon.io

前夜祭は参加しなかったので本編1日目から。

※ 本当は感想割とあるのでたくさん書きたいのですが、そうしているといつまでも更新しないので、「まだ書きたいことあるけど書ききれてない」という箇所には"WIP"と書いておいて、後で書くことにします*1

1日目

Envoy internals deep dive

今回buildersconに参加して一番得るものがあった発表でした。

WIP

Caching at Netflix: The Evolution of EVCache

Netflixのcache戦略がどんなものなのかを知りたくて聞いてきました。

WIP

カクヨムでの縦組み表示の実装と、縦書きWebの将来に向けて

以前Sphinxにepub3のビルダーを入れた身としては縦書きWebの話は興味をそそられるものがあったので聞きに行くことに。

予想通りCSS Writing modeを使って実装したとのことですが、各ブラウザ毎の挙動の違いがここまで多いものだとは思わなくて、改善をしていった人たちの作業は大変だっただろうなと思いました。

WIP

airflowを用いて、複雑大規模なジョブフロー管理に立ち向かう

Apache airflowについては簡単にしか知らなかったので聞きに行きました。

安全なランダムネスの理論と実践

WIP

lld − 開発ツールの主要コンポーネントの1つをスクラッチから作成した話

WIP

懇親会 & アフターパーティ

WIP

2日目

次世代通信プロトコルにおけるセキュリティ・プライバシー保護・パフォーマンス (Security, privacy, performance of the upcoming transport protocols)

正直自分にとっては難しすぎたのと前日から継続していた寝不足がたたって途中眠ってしまってほぼ理解できず。反省。

後で復習して理解したいですね。

Jepsen 10

これは「知らなかったを知る」に個人的に一番マッチした話でした。

WIP

ブログサービスのHTTPS化を支えたAWSで作るピタゴラスイッチ

いやピタゴラスイッチすごいな、という感想がまず最初に来ました

WIP

Webアプリケーションエンジニアが知るべきDNSの基本

参考書を買って読んでもDNS全く分からなかった勢なので参加しました。

WIP

参加した結果、今まで曖昧に理解していたところが理解できたのと、route53と絡めて説明してくれたおかげで実務で今後route53を触るときに復習できそうなので為になりました。

1日約70万ビルド: DockerとNomadが支えるCI/CDプラットフォーム

個人的に今回のbuildersconで一番聞きたかった発表でした。

というのも、私が勤めている会社ではNomadをプロダクションに使っていて、Nomadを実運用して知見を公開している例が他のHashiCorp製ツールやk8sに比べると少ない*2と感じていて、恐らくHashiCorp以外で世界で一番Nomadをガチで使っているCircle CIさんの知見が聞きたかったからです。

WIP

この発表は実務に活かせる部分がありそうという意味では、"Envoy internals deep dive"以上に為になった発表でした。

後でもいいからこのNomadの発表に関しては色々書きたいですね。

総評

WIP

*1:ただし実行されるかは分からない!

*2:個人的印象

Sphinx + 翻訳 Hack-a-thon 開発合宿に参加してきました #sphinxjp

表題の通りで、Sphinxの開発合宿に参加してきました。

sphinxjp.connpass.com

2年ほど前にはSphinxにプルリクエストを送ってマージされたりするくらいは活動していたのですが、ここ最近は全く活動しておらず、新年が明けてちょうど切り替えのいい機会なので、仕事が始まる1/9より前の1/7, 8に開かれる開発合宿に参加してきました。

場所は国立女性教育会館。私を含めて7名が1泊して色々作業しました。

www.nwec.jp

やった内容としては1人によってそれぞれ違っていて、ある人はSphinxに積み重ねられたissueのトリアージをしたり、issueを解決するプルリクエストを作って送ったり、またメンテナ陣を含めてSphinxの将来の姿(何をするのか・何をしないのかなど)について議論をする人もいました。

私がやった事は基本的にissueのトリアージで、メンテナの人たちが普段忙しくて手をつけられていないissueを見て、報告されているエラーが再現できなくて手が止まっているものなどを改めて自分で環境を構築して問題が再現したいかどうか確認するといったことなどをしていました。

取り組んだissueは具体的にはこれらです。

大学時代の友人とはこういった泊まりでどこかに出かけたりするなどのことをしたことがあるのですが、大学を卒業して以降知り合った人と泊まりを含めた合宿的な事は全くしたことがなかったので、いろいろな意味でうまく他者とやっていけるのかどうか少し心配もしていましたが、何とか無事に過ごせましたし、個人的にはかなり実りのある時間を過ごせたので参加してよかったと思いました。

こちら、合宿の様子です。写真が付いてて分かりやすいツイートや自分で撮った写真をまとめておきます。

Untitled

武蔵嵐山駅から歩いて国立女性教育会館に向かう時に見つけた看板を何となく撮影しました。

以下3枚の写真は、団体名が「#sphinxjp」となっているのが面白かったので撮影しました。オーケストラやバドミントン協会の中に混じって#sphinxjpの文字が躍っているのがシュールですね。

Untitled

Untitled

Untitled

実際に作業した場所は以下の研修室です。

Untitled

時折、メンテナの小宮さんが普段開発をしていく中で得てきた知見やSphinxの闇などを共有する時間などもありました。

Untitled

以下、参加者が投稿したツイート。

感想

楽しかったのと、自分でもissueのトリアージで多少貢献できることが分かったので、時間を見つけてこれからもちょくちょく貢献していきたいですね。

Tokyo Quantopian User Group Vol.02 に参加して株やシステムトレードの基本について学んできました

学生時代にほんの少額を投資信託に使い始めて、今も余力がある分だけは資産運用という名目の元、マネックス証券が出しているanswerというスマホアプリなどの情報を元に適当に投資信託をやっていたのですが、最近はあまり手も出せずにロボアドバイザー任せにしていたり、そもそも資産運用とか金融知識を体系的に学んだことがなくて戦略というものが無く、「いつかまとまって勉強したいなあ」と思っていました。

そういう背景があったのと主催関係者からのお誘いもあり、今回Tokyo Quantopian User Group Vol.02というイベントに参加することにしました。

quantopian-tokyo.connpass.com

誘われるまでQuantopianというものを聞いたことがなく、サイトに行って軽く流し見をしてもよく分からず「???」という感じでしたが、ネットで軽く調べたところ、プログラムを組んでアルゴリズムを作って現実の株価を元に投資戦略を開発することが出来るプラットフォームという感じらしいことまでは把握。

qiita.com

「事前にアカウントを作っておいてね」とのことだったので、前日にアカウントを作るまでは資産運用のことも含めて特に事前勉強とかせず、イベントに参加。

イベント内容は以下の通りでした。

  • Quantopianをはじめるための株式取引用語入門
  • Quantopianハンズオン

以下、参加して勉強したことや感じたことを軽く書きます。

Quantopianをはじめるための株式取引用語入門

まずはじめに座学ということで、Quantopianを使う際に知っておいた方がいい用語などを含めた株式関連の座学がありました。

「あくまで初心者向けの内容のため、記述の正確さなどを犠牲にしている部分があることはご承知ください」という趣旨の注意事項が最初にあって、各用語や概念の話がされました。

ドローダウンなど初めて聞く言葉ばかりでメモが追いつかず、不正確な部分が多いかと思いますが、自分が後で振り返れるようためにも、手元に残したメモをもとに羅列していきます。メモといっても発表に使われたスライドの内容をほぼ転記したものですが。移し間違いなどもあるかと思いますし、あくまで参考ということで。

  • 株式
  • 株式分割
    • 株式分割とは、投資家が株を買いやすくすることなどを目的に、会社がその発行済みの株を一定の割合で分割するもの
  • ETF
    • Exchange Traded Fundsの略
    • 上場投資信託
    • アメリカの場合の例
      • S&P 500
        • アメリカの代表的な上場会社500銘柄による指数
      • SPY
        • S&P 500に連動するよう設計されたETF
    • ETFの価格は指数とは関係ない。ETFの価格の変動は指数と関係する。
  • ビッド価格
    • 買い手側の話
    • 株を買おうとしている人が提示している値段
  • アスク(オファー)価格
    • 売り手側の話
    • 株を売ろうとしている人が提示している値段
  • ビッド・アスク・スプレッド
    • ビッドとアスクの価格差
  • ミッド価格
    • ビッドとアスクの真ん中の水準
  • 約定価格
    • 実際に取引がなされた価格
    • (取引された時点における)ミッドの水準ではない
  • 出来高
    • 実際に取引がなされた株数
    • 取引がなく、出来高がゼロでもミッド価格は存在(取引できない)
  • スリッページ
    • 注文価格(あるいは計算上の価格、基準となる価格)と実際の約定価格との差
  • ロング
    • 株などを買って持っていること
    • 買い持ちの持ち高をロングポジションという
  • ショート
    • (持っている株よりも多くの)株を売っていること
    • 売り持ちの持ち高をショートポジションという
  • エントリー
    • (メモできず)
  • エグジット
    • (メモできず)
  • ベンチマーク
    • 一般に、株式市場全体の動きを示す目安となるもの
  • アルファ
    • ベンチマークと比較して、どれくらいうまく利益を出せているかを表す指標
  • ベータ
    • (メモできず)
  • ドローダウン
    • 運用している資産の、過去の最大額を基準として、損失によって減少した額の比率のこと。
  • シャープレシオ
    • 運用資産の価値の変動の程度に対して、どれくらい収益があるかを示す指標
    • シャープレシオが高いということは、リスク(価値の変動)が小さく、リターンが大きいということ
  • ソルティノレシオ
    • シャープレシオの修正版のようなもの
    • 運用資産の価値が上昇するのは気にする必要がないと考え、下落方向の価値の変動だけに対して、どれくらい収益があるかを示す指標

他にも説明があったことは手元のメモには残しているのですが、不十分だったり正確に書けていない恐れが強かったので外しています。

上記に記載した用語の内、聞いたことがあったのは複数ありましたが、正確に理解しているものは一つも無かったので勉強になりました。

この後のQuantipianハンズオンで分かるのですが、こういった用語の意味を把握していないと、トレーディング関連のソフトウェアで表示される値の意味が全く分からないんだなということが分かったのが収穫でした。

後、SPYは大分優秀なETFだということもこの後のハンズオンで分かりました。

Quantopianハンズオン

QuantopianのハンズオンではQuantopianの使い方や表示される画面の意味などの説明を受けました。

受けてみて思ったのは、「私みたいに投資の素人が誰の手ほどきや説明も受けずに公式のチュートリアルだけでQuantopianの使い方を学ぶのは非常に時間がかかりそう」というもので、ちゃんと使うためにはPython(とpandas)の知識を前提にした上で、Quantopian独自のお作法を使ってアルゴリズムを組む必要があるので、今回のようなハンズオンに参加できたのは結構時間の節約になって良かったと思います。

このハンズオンでは説明を聞きながら実際にQuantopianを動かしていたため、自分用のメモを全く取る暇が無く、手元に資料がないのでまともな振り返りが出来ないのですが、雰囲気だけでもお伝えできるよう、Quantopianスクリーンショットを載せておきます。

Untitled

スクリーンショットの文字が小さくて見えないでしょうが、最初の座学で説明があったシャープレシオソルティノレシオ、アルファ、ベータなどの値が表示されています。なので、ここら辺の値が意味するところを分かってないと「???」な状態になること間違いなしだと思いました。

上記スクリーンショットアルゴリズムは運営の方が用意した「毎日取引開始時間にフィリップモリスの株をひたすら買うだけのアルゴリズム」で、見て分かるとおり、ベンチマークに比べて大分負けています。というか、ベンチマークに選ばれているSPYが大分優秀で、SPYを買っているだけで9%以上のリターンがあるので驚きでした。

メモがないので思い出すのも一苦労ですが、以下のような点がQuantopianのすごいところだと思いました。

  • (アメリカの)株価を取得できる関数が用意されているので、スクレイピングとかの手間いらず
  • 「条件に合った銘柄だけを対象に売り買いの設定をする」のが柔軟に可能
  • 株式配当があって、配当が来た分で買いの条件を満たしていたら自動的に買いの発注をするなど、こちらが手間をかけなくても条件に沿った運用をシミュレーションしてくれる

結構細々とした点がQuantopian側でフォローされていて、自分たちは純粋にアルゴリズムを組むことに専念できるという所が強みなのかなというのが教わりながら触ってみて感じた印象です。

深く使おうとすると無限に時間を吸い取られそうなので、今すぐどうこうするということは考えてないのですが、いつか時間を取っていじりたおしてみたいとは思いました。

まとめ

資産運用に対する勉強の意識が高まりました。

はい。高まっていて行動しないといういつものパターンに陥りそうなので、アウトプットの練習がてら、普段の生活に組み込めるよう、ちょっとずつ変えていきたいですね。

あと、主催関係者がFinTech関連のLT大会&忘年会を以下のように企画しているようなので、興味のある人は参加してみるといいと思います。

fin-py.connpass.com