1
This commit is contained in:
parent
2e1f709fd0
commit
ee7d8f6a58
@ -1,12 +1,15 @@
|
||||
import requests
|
||||
from binance.spot import Spot
|
||||
import pandas as pd
|
||||
from binance.cm_futures import CMFutures
|
||||
|
||||
import urllib3
|
||||
|
||||
api_key = "HCpeel8g6fsTK2630b7BvGBcS09Z3qfXkLVcAY2JkpaiMm1J6DWRvoQZBQlElDJg"
|
||||
api_secret= "TySs6onlHOTrGzV8fMdDxLKTWWYnQ4rCHVAmjrcHby17acKflmo7xVTWVsbqtxe7"
|
||||
|
||||
client = Spot(api_key, api_secret)
|
||||
future_client = CMFutures(api_key, api_secret)
|
||||
|
||||
# 获取市值前top的币种
|
||||
def _get_top_coins_by_market_cap(top):
|
||||
@ -58,17 +61,29 @@ def get_symbols():
|
||||
# 创建DataFrame
|
||||
columns = ['symbol', 'status', 'baseAsset', 'quoteAsset']
|
||||
df = pd.DataFrame(data, columns=columns)
|
||||
df = df[(df['status'] == 'TRADING') & (df['quoteAsset'] == 'USDT')]
|
||||
|
||||
# 过滤出在架交易对
|
||||
df_in_trade = df[df['status'] == 'TRADING']
|
||||
df_in_USDT = df_in_trade[df_in_trade['quoteAsset'] == 'USDT']
|
||||
return df['symbol']
|
||||
|
||||
return df_in_USDT['symbol']
|
||||
def get_future_symbols():
|
||||
data = future_client.exchange_info()["symbols"]
|
||||
|
||||
# 创建DataFrame
|
||||
columns = ['symbol', 'contractStatus','contractType', 'baseAsset', 'quoteAsset']
|
||||
df = pd.DataFrame(data, columns=columns)
|
||||
# 过滤出交易对
|
||||
df = df[(df['contractStatus'] == 'TRADING') & (df['quoteAsset'] == 'USD') & (df['contractType'] == 'PERPETUAL')]
|
||||
|
||||
return df['symbol']
|
||||
|
||||
## 根据交易对和周期获取数据集
|
||||
def get_klines(symbol,interval , limit=1000):
|
||||
def get_klines(symbol,interval, future = False,limit=1000):
|
||||
# 获取 k 线数据
|
||||
data = client.klines(symbol, interval,limit=limit)
|
||||
data = {}
|
||||
if future == True:
|
||||
data = future_client.klines(symbol, interval, limit=limit)
|
||||
else:
|
||||
data = client.klines(symbol, interval,limit=limit)
|
||||
|
||||
# 将数据转换为DataFrame
|
||||
columns = ['timestamp', 'open', 'high', 'low', 'close', 'volume',
|
||||
|
||||
@ -68,8 +68,8 @@ def stratergy_run(symbol, interval, df, debug):
|
||||
def run_crypto(interval, debug=False):
|
||||
print('Vegas策略运行.')
|
||||
|
||||
for s in setting.symbols:
|
||||
df = crypto.get_klines(s, interval)
|
||||
for s in crypto.get_future_symbols():
|
||||
df = crypto.get_klines(s, interval, True)
|
||||
stratergy_run(s,interval, df, debug)
|
||||
|
||||
time.sleep(1)
|
||||
@ -58,12 +58,11 @@ def stratergy_run(symbol, interval, df, debug):
|
||||
print(message)
|
||||
|
||||
|
||||
|
||||
def run_crypto(interval, debug=False):
|
||||
print('Vegas策略运行.')
|
||||
|
||||
for s in setting.symbols:
|
||||
df = crypto.get_klines(s, interval)
|
||||
for s in crypto.get_future_symbols():
|
||||
df = crypto.get_klines(s, interval,True)
|
||||
stratergy_run(s,interval, df, debug)
|
||||
|
||||
time.sleep(1)
|
||||
8
test.py
8
test.py
@ -1,4 +1,5 @@
|
||||
import requests
|
||||
import datasource.crypto
|
||||
from monitors import move
|
||||
from datasource import crypto
|
||||
import talib
|
||||
@ -7,6 +8,13 @@ from binance.cm_futures import CMFutures
|
||||
from monitors import vegas_cross
|
||||
from datasource import crypto
|
||||
from monitors import macd_boll
|
||||
import datasource
|
||||
from binance.cm_futures import CMFutures
|
||||
|
||||
# client = CMFutures()
|
||||
# print(client.exchange_info()['symbols'])
|
||||
|
||||
# print(datasource.crypto.get_future_symbols())
|
||||
|
||||
macd_boll.run_crypto('15m', debug=True)
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user