A través de los capítulos anteriores de esta serie, creo que básicamente ha dominado el uso de varios tipos de módulos de visualización. En este capítulo, usamos una estrategia simple pero interesante para construir un módulo de visualización.
El núcleo de la estrategia es perseguir después de subir y matar la caída, y elegir el mercado al contado de la moneda digital, como BTC_USDT, de acuerdo con el precio actual cuando se ejecuta la estrategia, si el precio aumenta en un cierto porcentaje, comprar de acuerdo con un cierto porcentaje del activo actual (moneda de precio).
Antes de construir, añadimos algunos módulos reutilizables.
Como se muestra en la figura anterior:
En la columna biblioteca de clases, hay algunas bibliotecas de clases encapsuladas reutilizables, que se pueden usar después de verificar.
La
Debido a que la idea de la estrategia es muy simple, los módulos de estrategia no son muy grandes. Nuestra prueba de retroceso comenzó en octubre de 2018, en menos de un año, aparecieron grandes y pequeñas conmociones y cotizaciones de tendencia, que pueden probar la estrategia preliminarmente. Parámetros de ensayo de retroceso:
Echemos un vistazo al rendimiento de esta estrategia:
La estrategia de lenguaje JavaScript equivalente también se lanza aquí, y alguien que esté interesado puede estudiarla. A través del aprendizaje de la estrategia de construcción de módulos visuales, el concepto de la estrategia y el uso de varias interfaces, es muy conveniente comenzar con el comercio de programas. La estrategia no tiene otros parámetros de interfaz, y alguien que esté interesado puede optimizar y expandirlo.
function main() {
var basePrice = -1
var addRatio = 0.02
while (true) {
var ticker = exchange.GetTicker()
if (basePrice == -1) {
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) > 0 && ((ticker.Last - basePrice) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Balance * addRatio / ticker.Last
$.Buy(amount)
basePrice = ticker.Last
}
if ((ticker.Last - basePrice) < 0 && ((basePrice - ticker.Last) / basePrice > addRatio)) {
var acc = exchange.GetAccount()
var amount = acc.Stocks * addRatio
$.Sell(amount)
basePrice = ticker.Last
}
}
}
Un aspecto interesante de esta estrategia es que el activo de la cuenta se establece para ser equivalente a la moneda y el valor monetario inicialmente, como los pares de negociación BTC_USDT, el precio de BTC es 10000 en la actualidad, la moneda de la cuenta se asigna a 5, y el USDT se asigna a 50000.
La estrategia es neutral con respecto a las condiciones del mercado, a los aumentos y disminuciones de precios. Trate de asignar menos USDT y más monedas. Por ejemplo:
Hay cambios obvios en el backtest.
También puede establecer más USDT y menos monedas.
Reunimos el módulo y probamos nuestras propias ideas de comercio de programas juntos.
Ejemplos de estrategias de visualización:
https://www.fmz.com/strategy/121404 https://www.fmz.com/strategy/129895 https://www.fmz.com/strategy/123904 https://www.fmz.com/strategy/122318Para más estrategias, consulte:https://www.fmz.com/square
Otros artículos de esta serie
La programación aburrida puede completarse fácilmente con bloques de construcción.