1. Propuesta:El primer libro de estrategias para aprender a escribir fue encargado por Ice Mountain: En este artículo se hace referencia principalmente a la estrategia de Daeng:https://www.fmz.com/strategy/188435En general, la estrategia no es muy diferente a la de la escuela, pero la escritura es un poco más grosera.
2.前因En el caso de la compra y venta masiva de monedas digitales, el precio de mercado de las monedas que se desean comprar / vender puede verse afectado por el mayor monto de la transacción.El tiradorEn la actualidad, la mayor parte de las ventas se realizan en línea.El plato¿Qué es esto? 1 tirador: eleva el precio, sube el precio de la moneda 2 Discos: Vender monedas directamente sin importar el precio, lo que hace que caigan. 3 Monedas de intercambio: las monedas que se utilizan para el intercambio, como el par de transacciones BTC/USDT.BTC es una moneda de intercambio.4 Balance de la moneda de facturación: la moneda de facturación del usuario, por ejemplo, el par de transacciones BTC/USDT.El USDT es una moneda de facturación
La montaña de hielo fue encargada:Operación: se trata de desglosar automáticamente el encargo de un gran pedido enEncargos múltiplesEn la actualidad, el servicio de compra y venta de compras en línea ofrece servicios de compra y venta de compras en línea, así como servicios de compra y venta en línea.Reemplazo automático de la última orden cuando se ha negociado en su totalidad o cuando el precio más reciente se desvía significativamente de la orden actual.Efectos: Reducir el impacto de la compra/venta masiva en el precio del mercado, lo que permite comprar en grandes cantidades.Prevenir el aumento de los costos de sus compras debido a la subida de los precios de los grandes pagosEn el caso de las ventas masivas, se puede comprar.Para evitar que los precios bajos causados por la gran cantidad de pedidos reduzcan sus ganancias de venta.
Los parámetros de datos comparados:
Las reglas:
Los principales parámetros:
¿Qué es lo que está pasando?
Sugerencias
La estrategia no es perfecta, los ladrones que quieren pasar apuntan uno o dos.
import random def main(): # 获取账户所有未成交订单 Log("取消所有未成交订单") orders = _C(exchange.GetOrders) if len(orders) > 0: for i in range(len(orders)): exchange.CancelOrder(orders[i]["Id"]) Sleep(priceInterval*1000) # 对比账户余额 Log("获取用户初始化账户") initAccount = _C(exchange.GetAccount) if initAccount["Balance"] < buyAmount: Log("账户余额不足") return #比较单笔购买数量均值*市场买一价是否大于账户余额 ticker = _C(exchange.GetTicker) if (ticker['Last'] * buyNum) > initAccount['Balance']: Log("单次购买均值价格大于账户余额,请调整参数") return lastBuyPrice = 0 while (True): Sleep(priceInterval*1000) #获取账户信息 account = _C(exchange.GetAccount) #获取当下行情 ticker = _C(exchange.GetTicker) # 上次购买价格不为空,查看订单是否完成,没有完成则取消 if lastBuyPrice > 0: orders1 = exchange.GetOrders() if len(orders1) > 0: for j in range(len(orders1)): #计算实际市场委托深度 if ticker["Last"] > lastBuyPrice and ((ticker["Last"] - lastBuyPrice)/lastBuyPrice) > (2* (depthStatus/100)): Log("委托价格偏离过多,最新成交价:",ticker["Last"],"委托价",lastBuyPrice) exchange.CancelOrder(orders1[j]["Id"]) lastBuyPrice = 0 continue else: Log("买单完成, 累计花费:", _N(initAccount["Balance"] - account["Balance"]), "平均买入价:", _N((initAccount["Balance"] - account["Balance"]) / (account["Stocks"] - initAccount["Stocks"]))) lastBuyPrice = 0 continue else: Log("剩余余额:",account["Balance"]) #委托价格 = 最新买一价*(1-委托深度/100) entrustPrice = _N(ticker["Buy"]*(1-depthStatus/100)) Log("委托价格:",entrustPrice) #判断委托价格是否大于最高价格限定 if entrustPrice > highPrice: continue #随机购买数量 = 单次购买数量均值 * ((100-单次均值浮点数)/100)+(单次均值浮点数*2 /100* 单次购买数量均值 *随机数0~1) randomBuyNum = (buyNum*((100-buyOncePoint)/100))+(buyOncePoint*2/100 *buyNum*random.random()) #可用数量金额 useMoney = min(account["Balance"],randomBuyNum,buyAmount - (initAccount["Balance"] - account["Balance"])) #购买数量 orderBuyNum = _N(useMoney/entrustPrice) Log("交易数量:",orderBuyNum) #判断是否小于最小交易量 if orderBuyNum < minBuyNum: break #因为要扣手续费,所以大概为账户99.7% if (entrustPrice*orderBuyNum)>(account["Balance"]*0.997): Log("金额为",(entrustPrice*orderBuyNum)) Log("账户余额为",(account["Balance"])) continue #更新上次购买价格 lastBuyPrice = entrustPrice #下单 exchange.Buy(entrustPrice,orderBuyNum) account = _C(exchange.GetAccount) Log("冰山委托买单完成,共计花费:",_N(initAccount["Balance"]-account["Balance"]),"平均单价为:",_N((initAccount["Balance"]-account["Balance"])/(account["Stocks"]-initAccount["Stocks"])))