Bot

仮想通貨botの開発を本格的に始めてみる#2(23/9/1)

今日はこちらの記事を参考に、BitflyerでビットコインFXの自動取引botの開発に取り組んでいきます。

この記事を選んだ理由は、基礎環境の設定・解説と図解が充実していたからです。

過去にも触ったことがあるため、復習のつもりで1から確認してみます。

以前は、かなり先まで進めることができていたのですが、意味をきちんと理解しないまま進めていたため、途中で飽きてしまったのです。

今回は気になる言葉は全て調べるというスタンスで、じっくりと進めていきます。(前回の記事はこちらから)

環境構築

私のPCは、Mac Book Air。チップはApple M2。メモリは8GB。

開発環境を整えるために、まずは、Anacondaという開発キットをインストールしました。

この時、Pythonという開発言語も一緒に使えるようになります。

そして、Anacondaの中からSpyderというエディタを使うことにしました。

その理由は、SpyderがPythonを触る時にコードの編集と出力結果の両方を一つの画面で見ることができるからです。

Spyderの解説はこちらの記事を参考にしました。

この過程で「python mac エディタ」で検索して各種エディタの比較もしました。

そもそもエディタには、”シンプルにテキストのみを編集するタイプ”と”編集と実行を一括で行うIDE(総合開発環境)”があります。

SpyderはIDEタイプです。

簡単な指示を出してみる

開発環境が整ったので、早速コードを書いてみました。

指示通りに意味を考えながらコードを1文字ずつ打っていきます。

打つだけなら簡単なのですが、一つ一つの意味をきちんと説明できません。

早速引っかかったのは「ライブラリ」という言葉。文系の私はこんなこと一つにもつまずいてしまうので、その度にググらねばなりません,,,

そして、ライブラリとは「あらかじめ作られたコードや機能のまとまり」のことなのだと理解しました。

つまり、ライブラリを使うことでプログラム作成のショートカットをすることができるのです。

今回は、現在の時刻と日付を表示する練習でしたが、これ一つ行うだけでも様々なことを知ることができます。

  • どんなライブラリを使うのか。
  • そこからどんなデータを取得するのか。
  • 取得したデータをどんな形式で整形するのか。
  • 整形したデータを代入する変数(≒値を入れる箱)は何か。
  • データを出力する方法をどうするのか

この過程で、「変数」とは”指定した値・数値・文字列を管理しやすくするための手段”であると理解しました。

たとえば、今回だと「time」という変数に「年・月・日・何時・何分・何秒」を設定しています。

さらに「strftime」も意味が分からず調べてみることに,,,。

これは「日時データを指定した形式で文字列に変換する方法の一つです。

このあたりはノリと勢いで理解しました。

これでは、牛歩の歩みという言葉がぴったりです。

たった3行のコードを書くだけなのに、なぜこんなにも調べなくてはいけないのか。

千里の道も一歩から。

まとめ

結果として、現在時刻のデータを取得してそれを表示することができるようになりました。

今日行ったことは、賢い人たちが作ってくれたプログラム集を借りて使う練習でした。

つまり、事前に作成されている土台を活用することで、近道できることは近道してしまおうという工夫を知ったわけですね。

意味のわからない言葉が出てきたら、自分で調べながら書き写す

独力で進めるには、これがいちばんの近道です。

以前にコピペを連発しながら学習を進めていたことを思い出して反省しました。

次回は「API」に向き合って学習を進めていきます。

-Bot