Moment - Bitcoin自動トレードWebアプリ

4bb87677b7386903b43b11e3c5000d3f?s=47 o-t-k-t
January 26, 2019

Moment - Bitcoin自動トレードWebアプリ

2019年1月に実施したDIVE INTO CODE Webフルタイムコース卒業制作発表のスライドです。

4bb87677b7386903b43b11e3c5000d3f?s=128

o-t-k-t

January 26, 2019
Tweet

Transcript

  1. DIC卒業制作発表 2018/9 Webアプリケーションコース フルタイム 岡部利樹

  2. 電子工学科の専門学校を卒業 後、一貫してエンタープライズ ストレージ製品の開発に従事 ハード設計担当だが、C言語に よるテストプログラムの開発・運 用の経験にやりがいを感じ、よ り技術的に近いWebサービス 開発に転向するため受講 自己紹介

  3. 好きなメソッドは「define_method」 belongs_toやGemが追加するメソッドはこれと同じ仕組みで実現 動的言語は変なところもあるがコマンド叩いてすぐ動かせるのはすごい

  4. 仮想通貨自動トレードアプリケーション ここにテキストを挿入 ここにテキストを 挿入 ここにテキストを挿入 ここにテキス トを挿入 ここにテキストを挿入 ここにテ キストを挿入

    Bitcoinの自動トレードアプリを制作 リスク資産の価格は基本的に 1. 底値の上昇ペースを継続、 2. それを破ると反転 3. 1.2.の繰り返し 自分が働いている間に これに追随するBotが欲しかった [BTCUSD価格推移] CoinMarketCapを元に作成
  5. 仮想通貨自動トレードアプリケーション ここにテキストを挿入 ここにテキストを挿入 ここに テキストを挿入 ここにテキストを挿入 ここにテキス トを挿入 ここにテキストを挿入 ここにテキストを挿入

    ここにテキストを挿入 ここにテキストを挿入 ここに テキストを挿入 ここにテキストを挿入 ここにテキス トを挿入。 ここにテキストを挿入 ここにテキストを挿入 ここに テキストを挿入 ここにテキストを挿入 ここにテキス トを挿入 ここにテキストを挿入
  6. Botの投資戦略 ドルコスト平均法 対象通貨を定期的に買い増し続ける トレーリングストップ 指定の上昇ペースを維持できなくなった ら売る

  7. Gem: ruby_coincheck_client 仮想通貨取引所Coincheckが提供するREST APIの単純なラッパー Bitcoin価格の取得や、注文の発行を行える

  8. Gem: Sidekiq 通常のRailsのリクエスト〜レスポ ンス期間を超えてRubyを動かせる ・定期的な価格監視 ・Botの注文を並列に発行

  9. 制作1週間 +卒業OK判定後の手直し

  10. 苦労点 HTTPS化 Qiitaの記事を鵜呑みし、あとで確認すると 不十分と判明 (HTTPSをサポートする無料CDNを使うとい う内容だったが、 CDN-Appサーバ間は平文!) お金で解決。。。 (Heroku有償コンテナ or

    GCP) 注文処理の冪等化 注文は即決済されるためPUTの冪等性(そ もそもID指定不可で実質POST)が活かせな い リプレイ攻撃対策用の仕組みを流用 (APIリクエストヘッダーにタイムスタンプが 含まれており、サーバは前後関係をチェック している)
  11. None
  12. [デバッグでの実験結果 ]

  13. DIC後輩に 伝えること 予定前倒しがおすすめ。試したいことはたくさん出てくるし、気持ちものる。 コードレビューは気づきが多く重要、雑なコードを持っていかない  - Rubocop使う(機械で落とせるものにレビュー時間使うのは不毛)  - どうしてそう書いたか説明できるようにする。   「こう思ったから」よりは「〇〇パターンが適していると判断」の形がいい

    英語リーディング重要。README・解決済みIsuue読めないとQiita地獄に陥る 体調管理重要(毎日>7時間の睡眠) DIC後輩に伝えたいこと
  14. ありがとうございました