FXと仮想通貨自動売買ブログ pythonプログラミング勉強4回目

このブログはfx自動売買と仮想通貨botに関するプログラミングの知識を付けたい20代がノートのように投稿していくものです。※このカテゴリーのコードはChatGPTで作成されたものを元に、学習用として掲載しています。動作保証や商用利用はしていません。実際に自作したものもありますが基本的には閲覧用として見て下さい。

Information

【Instagramのフォローよろしくお願いします】

前回ccxtを用いてpythonでコインチェックでBTCを成行で0.001枚買うコードを作りました。以下のように赤いエラー文字も出て来ずAPIを打てば起動できるところまで来たので着実に進歩出来ました。

場所指定でファイルが見つからなかった時に有効だったこと
  • ファイルから直接pythonを開く
  • ファイルのc:\から始まるアドレスを打ち込めば正確に場所指定できる
  • コードをnotepadから保存するときに拡張子が.txtになったまま保存しているか確認して、保存する時に.pyを必ずつける
  • ファイルの名前に全角の文字が入っていないか確認し、間違えを防ぐためになるべく小文字をつかって_で見やすくする

GMOコインもAPIを提供しているのでBOT作れるか、と思いきやCCXTは未対応なので通常のコード?で作ってみます。

色々ChatGPTに質問して分かったこと

Information
  • Pythonのコードそのままでは使えなくjsonライブラリに変換するひつようがある
  • 最初に時間取得、署名作成、ハッシュアルゴリズムの提供?、jsonへ変換の儀式が必要
  • make_headers(method, path, body=''): で外枠を作って、returnでAPI-KEY、API-TIMESTAMP、API-SIGN、Contents-typeを送る
  • GMOコインは時間をミリ秒で認識する
def get_timestamp():
    return str(int(time.time() * 1000))

time.time()で今の時間を秒に、*1000でミリ秒に変換、int()で小数点を切って整数に、str()で数字を文字列にAPIが認識できるようにする。

def make_headers(method, path, body=''):
    timestamp = get_timestamp()
    text = timestamp + method + path + body
    sign = hmac.new(API_SECRET.encode(), text.encode(), hashlib.sha256).hexdigest()
    return {
        'API-KEY': API_KEY,
        'API-TIMESTAMP': timestamp,
        'API-SIGN': sign,
        'Content-Type': 'application/json',
    }

methodはget(情報を見せてもらう)かpost(情報を送る)か。

text = timestamp + method + path + bodyは署名の元。時刻、GetかPostか、APIのパス

bodyは

body = {
  "symbol": "BTC",
  "side": "BUY",
  "executionType": "MARKET",
  "size": 0.01
}

みたいな、POST。銘柄、売買方向、執行方法、ポジションサイズの順番

body_json = json.dumps(body)

dumps は「dump(出す)s(stringに)」の略。pythonをjson文字列に変換するもの。

dumpsはjsonライブラリにあるから

import json

を忘れずにいれる

時間がないので、5回に持ち越し。

(● ˃̶͈̀ロ˂̶͈́)੭ꠥ⁾⁾私のTwitterはこちら

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です