No entanto, a maioria das pessoas não está muito satisfeita com o fato de ter um disco físico aberto; por isso, hoje compartilho uma simples demonstração de preço para você.ps: a linguagem é Python, por interfaces pin-pin, configuração do servidor não é apresentado aqui
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
Depois de concluído, obtenha o endereço e faça login (se o endereço não puder ser aberto, será necessário abrir a porta 8888)
Acesso a permissões Abrir Segurança - Shh Segurança Gerenciador - Abrir Shh Key Login
Arquivo de upload
sudo apt-get install screen
screen -S [name]
O botão de atalho para sair da tela
ctrl+a+d
Veja o que está acontecendo no fundo da tela
screen -ls
Conclusão do processo (PID pode ser visualizado pelo processo)
kill -9 [pid号]
Limpeza de informações de processo que estão mortas na tela
screen -wipe
# 钉钉输出接口
class DING:
# 向钉钉群输出信息
def msg(self,text):
token ="***"
headers = {'Content-Type': 'application/json;charset=utf-8'} # 请求头
api_url = f"***={token}"
json_text = {
"msgtype": "text", # 信息格式
"text": {
"content": text
}
}
# 发送并打印信息
requests.post(api_url, json.dumps(json_text), headers=headers).content
#拼接输出信息
def dd(self,logging):
bj_dt = str(datetime.datetime.now())
bj_dt = bj_dt.split('.')[0] # 处理时间
text = f'{bj_dt}\n' # 定义信息内容
text = text + logging # 处理信息内容
log.msg(text) # 调用msg函数,输出信息
A transação é obtida através do Binance, usando a interface do contrato U-bit do Binance, e o código abaixo é simplesmente encapsulado no Binance, apenas para referência.
import requests,json,time,hmac,hashlib,datetime
# APIKEY填写位置
apikey = '***'
Secret_KEY = '***'
#币安接口
class bian:
#拼接请求参数
def param2string(self,param):
s = ''
for k in param.keys():
s += k
s += '='
s += str(param[k])
s += '&'
return s[:-1]
# 参数为get,post请求方式,路径,body
def IO(self,method,request_path,body):
header = {
'X-MBX-APIKEY': apikey,
}
#选择请求方式
if body != '':
#签名
body['signature'] = hmac.new(Secret_KEY.encode('utf-8'), self.param2string(body).encode('utf-8'), hashlib.sha256).hexdigest()
if method == 'GET':
body = self.param2string(body)
tell = 'https://fapi.binance.com{0}?{1}'.format(request_path,body)
response = requests.get(url=tell, headers=header).json()
return response
elif method == 'POST':
response = requests.post(url='https://fapi.binance.com'+str(request_path), headers=header, data=body).json()
return response
else:
response = requests.get(url='https://fapi.binance.com'+str(request_path), headers=header).json()
return response
Como a estratégia é apenas para obter interfaces de preços, aqui é apenas uma demonstração simples, as outras interfaces são idênticas.
#封装获取价格接口
def price(self,Name):
body = {"symbol":str(Name)}
info = self.IO("GET","/fapi/v1/ticker/price",body)
for i in info:
if i == "code":
#设计一个接口错误容错功能
time.sleep(0.5)
letgo = '调用price函数接口返回错误,再次尝试 返回错误代码:{0}'.format(str(info))
log.dd(str(letgo))
exchange.price(Name)
return info["price"]
Abaixo está a implementação do código de vigilância do setor
# 监控币种&&监控价格一一对应
ccy = ["BTCUSDT","ETHUSDT","LTCUSDT"]
PriceTIME = ["100000;28000","500000000;1200","500;100"]
#行情监控逻辑
def pricewarm():
#轮询获取当前价格
for i in range(len(PriceTIME)):
info = exchange.price(str(PriceTIME[i]))
priceindex = PriceTIME[i].find(";") #提取价格区间
#价格上限
priceup = PriceTIME[i][:priceindex]
#价格下限
pricedown = PriceTIME[i][priceindex+1:]
if float(info) >= float(priceup): #钉钉接口输出
letgo = f'当前价格{info}USDT大于所设定上限{priceup}USDT'
log.dd(letgo)
elif float(info) <= float(pricedown):
letgo = f'当前价格{info}USDT小于等于设定下限{pricedown}USDT'
log.dd(letgo)
time.sleep(0.2)
# 主函数
def main():
global exchange,log
log = DING
exchange = bian
while True:
try:
pricewarm()
time.sleep(1)
except:
time.sleep(1)
if __name__ == "__main__":
main()
Quando o código estiver pronto, lembre o caminho e abra a tela de execução do terminal
screen -S [名称]
cd [路径]
python3 [文件名]
O processo de confirmação é executado e você pode sair.
O endereço da estratégia:O preço simples lembra o robô
btc123456O que acontece quando o robô não reage?
Inventor quantificado - sonho pequenoObrigado por compartilhar a experiência.
ProgramaçãoQQ 2700903954
btc123456O preço chegou, as configurações chegaram, o robô está funcionando, ou não me lembrou do que está acontecendo?
ProgramaçãoO preço é o único que nos faz lembrar.