あれこれ試してる時が楽しいですね。
MLBOT開発で失敗しながら作っています。
開発中に気づいたアンチパターンをのせておきます。
Table of Contents
GCEは無料で使える
GCEは無料で使えるとの話を聞いて、MVインスタンスを立ち上げようとして画面に表示されたのが
なんか無料じゃなかった。
CloudRunでWebSocket通信で価格取得するぞ😁
WebSocket動かない。
DB使うわ( ー`дー´)キリッ
ドキュメントを作りまくると課金されるみたい。
変更前
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
class Get_price: #--------------------------------------------------- # 1分間起動させる #--------------------------------------------------- def for_1_minute(self): for i in range(20): symbol="BTC" #symbolを指定 price = self.get_gmo_price(symbol) #GMOに価格を取得 self.setDB(price) #priceをデータベースに書き込む time.sleep(3) data = self.getDB() #データベースの最新データを読み込み return data #--------------------------------------------------- # DB #--------------------------------------------------- def setDB(self,price): db = firestore.Client() doc_ref = db.collection("price").document() doc_ref.set({ 'created': firestore.SERVER_TIMESTAMP, 'price': price }) def getDB(self): db = firestore.Client() docs = db.collection("price").stream() #データベース読み込み data = docs[0].to_dict() #最新データを辞書型に変換 return data |
変更後
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
class Get_price: #--------------------------------------------------- # 1分間起動させる #--------------------------------------------------- def for_1_minute(self): prices=[] for i in range(20): symbol="BTC" #symbolを指定 price = self.get_gmo_price(symbol) #GMOに価格を取得 prices.append(price) time.sleep(3) self.setDB(prices) #priceをデータベースに書き込む return "価格取得とDB書き込み完了" #--------------------------------------------------- # DB #--------------------------------------------------- def setDB(self,prices): db = firestore.Client() doc_ref = db.collection("price").document() doc_ref.set({ 'created': firestore.SERVER_TIMESTAMP, 'price': prices }) def getDB(self): db = firestore.Client() docs = db.collection("price").stream() #データベース読み込み data = docs[0].to_dict() #最新データを辞書型に変換 return data |
BybitがGoogleのIPアドレス規制をしているためです。国内のVPSなら使…
自分のbotで使ってるAPIキーを使用しているんですが、 You have br…
pybit 最新版にコードを変更しました。コードとrequirements.tx…
お返事ありがとうございます。はい。pybit==2.3.0になっております。
コードはあっていると思います。rewuirements.txtは「pybit==…