質問編集履歴
3
エラー文の追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -115,5 +115,11 @@
|
|
115
115
|
|
116
116
|
elif order_type =="get_balance":
|
117
117
|
get_balance()
|
118
|
+
```
|
118
119
|
|
120
|
+
|
121
|
+
```エラー文
|
122
|
+
if balance ["amount"] == 0:
|
123
|
+
TypeError: string indices must be integers
|
124
|
+
|
119
125
|
```
|
2
情報の追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -9,6 +9,11 @@
|
|
9
9
|
開発環境はpython3.8.8です。jupyter notebookを使って書いていますが、Flaskを使ってWebアプリケーション形式にすることを想定しています。
|
10
10
|
個人情報保護のため、API_KEYとSECRETは削除しています!
|
11
11
|
|
12
|
+
*追記情報*
|
13
|
+
HTMLのformからvalueを受けとって、受け取った値によって条件分岐させる構造です。
|
14
|
+
get_balanceという関数を同ファイルに書いて、イベントが起こった時に呼び出す形になっています。
|
15
|
+
データを取得に成功したらHTMLに表示させるつもりなので、取得した値は変数に入れたいです。
|
16
|
+
|
12
17
|
```Python
|
13
18
|
import pybitflyer
|
14
19
|
import time
|
@@ -34,4 +39,81 @@
|
|
34
39
|
if(BALANCE_KEY[1]=!0)
|
35
40
|
print(balance_key + " : " + str(balance[balance_key]))
|
36
41
|
print("=================================================")
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
``````Python
|
46
|
+
コード
|
47
|
+
```
|
48
|
+
|
49
|
+
import pybitflyer
|
50
|
+
from flask import Flask, render_template,request
|
51
|
+
import time
|
52
|
+
from datetime import datetime
|
53
|
+
import json
|
54
|
+
from dateutil import parser
|
55
|
+
from pytz import timezone
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
BASE_URL ="https://api.bitflyer.jp"
|
60
|
+
url = BASE_URL + "POST /v1/me/sendchildorder"
|
61
|
+
|
62
|
+
API_KEY = ""
|
63
|
+
API_SECRET =""
|
64
|
+
api = pybitflyer.API(API_KEY,API_SECRET)
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
nounce =str(int(time.time()))
|
69
|
+
|
70
|
+
app = Flask(__name__)
|
71
|
+
|
72
|
+
#残高を取得する関数
|
73
|
+
def get_balance():
|
74
|
+
|
75
|
+
BALANCE_KEYS =["currency_code",
|
76
|
+
"amount",
|
77
|
+
"available"]
|
78
|
+
|
79
|
+
balances =api.getbalance(product_code="BTC_JPY")
|
80
|
+
|
81
|
+
for balance in balances:
|
82
|
+
if balance ["amount"] == 0:
|
83
|
+
continue
|
84
|
+
for balance_key in BALANCE_KEYS:
|
85
|
+
print(balance_key + " : " + str(balance[balance_key]))
|
86
|
+
print("=================================================")
|
87
|
+
|
88
|
+
|
89
|
+
@app.route("/order",methods=["POST"])
|
90
|
+
#受け取った値に応じて関数を呼び出し
|
91
|
+
def receive_market():
|
92
|
+
order_type = request.form.get('order_type')
|
93
|
+
if order_type == "buy_market":
|
94
|
+
#成行買い
|
95
|
+
buy_btc=api.sendchildorder(
|
96
|
+
|
97
|
+
product_code ="XRP_JPY",
|
98
|
+
child_order_type="MARKET",
|
99
|
+
side="BUY",
|
100
|
+
size=0.1,
|
101
|
+
minute_to_expire=1000,
|
102
|
+
time_in_force="GTC"
|
103
|
+
)
|
104
|
+
|
105
|
+
elif order_type == "sell_market":
|
106
|
+
#成行売り
|
107
|
+
sell_btc=api.sendchildorder(
|
108
|
+
|
109
|
+
product_code ="XRP_JPY",
|
110
|
+
child_order_type="MARKET",
|
111
|
+
side="SELL",
|
112
|
+
size=0.1,
|
113
|
+
minute_to_expire=1000,
|
114
|
+
time_in_force="GTC"
|
115
|
+
|
116
|
+
elif order_type =="get_balance":
|
117
|
+
get_balance()
|
118
|
+
|
37
119
|
```
|
1
情報の追加
title
CHANGED
File without changes
|
body
CHANGED
@@ -7,6 +7,7 @@
|
|
7
7
|
|
8
8
|
どのように書き換えれば、保有しているコインの情報だけを(amountが0でない)要素を取得できるでしょうか。
|
9
9
|
開発環境はpython3.8.8です。jupyter notebookを使って書いていますが、Flaskを使ってWebアプリケーション形式にすることを想定しています。
|
10
|
+
個人情報保護のため、API_KEYとSECRETは削除しています!
|
10
11
|
|
11
12
|
```Python
|
12
13
|
import pybitflyer
|