私の前のいくつかの記事では、取引所からデータを取得する際、私は購入した海外サーバー上で直接実行していたので、ネットワークの問題を心配する必要はありませんでした。しかし、ほとんどの人が自分のローカルで実行していることを考慮すると、プロキシを使用する必要があります。最近、時間があったので、ローカルでプロキシを使用する際の注意事項を試してみました。
まず、データを取得するだけであれば、apiKey
は必要なく、プロキシを指定するだけで大丈夫です。取引所のインスタンスを初期化する際にproxies
フィールドを追加します:
exchange = ccxt.binance({
'timeout': 60000,
'proxies': {
'http': '127.0.0.1:7890',
'https': '127.0.0.1:7890',
}
})
exchange.load_markets()
私が使用しているプロキシソフトはclashで、プロキシポートはデフォルトで 7890です。
他のプロキシソフトは自分で検索してみるか、ソフト内で見つけることができるはずです。もし閉源のソフトウェアであれば、見つけるのが難しいかもしれませんので、自分でパケットをキャプチャして確認する必要があります。
取引などの操作に関して、バイナンスは IP ホワイトリストの設定を要求します。自分のサーバーがない場合は、購入したノードの IP を設定するしかありません。リスクがあるかもしれないと思いますが、自分のサーバー上で実行する方が安全です。
自分のプロキシノードの IP を確認するには、このウェブサイトにアクセスできます:https://ipinfo.io/
ただし、安全のため、購入したエアポートノードを使用して量化プログラムを実行することはお勧めしませんが、学習段階では少額のアカウントを使用して実験することは可能です。