En la actualidad, existen muchos intercambios de futuros de moneda digital, pero como derivados de futuros, el comercio de opciones de moneda digital, actualmente no hay muchos intercambios en el mercado, que apoyan el comercio de opciones, como Deribit, BitMEX. En el campo de la negociación cuantitativa, el comercio de opciones también tiene varias estrategias, como la estrategia de opciones mencionada en algunas de las búsquedas:
Tipo de trabajo | |||||
---|---|---|---|---|---|
Las estrategias orientadas: | Comprar opciones de venta | Vender opciones de baja | El precio del aluminio en el mercado de vacas | Los precios de los precios de los toros están bajando | |
– | Comprar opciones de baja | Vender opciones de venta | Los precios del aluminio en los mercados bajistas | Los precios de los mercados bajados | |
Las estrategias de fluctuación: | Se vende el transversal | Se vende a largo plazo | Comprar en línea | Compra de un largo alcance | |
Las estrategias de cobertura: | Prepárense y miren. | El estado de alerta está bajando. | La protección de los ojos | Baja de la protección | |
– | Las fronteras bilaterales | Dos límites de la cabeza vacía | – | – |
Citado porConexión
La redacción de estrategias de negociación de opciones requiere una base sólida, con operaciones básicas, obtención de mercado, retirada de orden, obtención de tenencias, etc.. La redacción de estrategias sigue utilizando la plataforma de negociación cuantitativa de inventores, aunque la plataforma de negociación cuantitativa de inventores es actualmente el principal soporte para el campo de la negociación cuantitativa de monedas digitales.
La documentación de la API:https://docs.deribit.com/v2/?javascript#public-get_last_settlements_by_instrumentEl disco de simulación:https://docs.deribit.com/v2/?javascript#public-get_last_settlements_by_instrument
Se puede registrar una cuenta en el sitio web de la placa analógica, abrir la API KEY y acceder a la API KEY. La configuración en la plataforma de negociación cuantitativa del inventor es la misma que la configuración de la placa real.
Los cuatro conceptos básicos para entender el comercio de opciones son:
Al ver los documentos de la API de Deribit, se puede ver que la interfaz de mercado de Deribit es sólo una entrada para acceder a los mercados de futuros u opciones.instrument_name
Si los parámetros son diferentes (instrument_name está configurado a través de la función SetContractType), entonces se puede usar básicamente la interfaz de acceso al mercado.GetTicker
El mercado de opciones también ha cambiado.
Por supuesto, los inventores de la plataforma de intercambio cuantitativo están envueltos por defecto en el disco físico de Deribit, primero debemos cambiar al disco analógico, usando el siguiente código:
exchange.IO("base", "https://test.deribit.com")
Y luego ponemos el actual contrato de opciones.BTC-27DEC19-7000-P
¿Qué es esto?
Esta es la fecha de venta: 27DEC19 y el precio de venta: 7000 opciones a la baja
exchange.SetContractType("BTC-27DEC19-7000-P")
Luego, obtuvimos, escribimos juntos, ejecutamos el código y probamos cómo obtener este contrato de opciones.
function main () {
exchange.IO("base", "https://test.deribit.com")
exchange.SetContractType("BTC-27DEC19-7000-P")
var ticker = exchange.GetTicker()
Log(ticker)
}
Las herramientas de depuración son muy fáciles de probar:El precio de los discos es el mismo que el de los discos de simulación.
En el caso de las llamadas a través de las interfaces de otros sectores, las mismas no se describen aquí, pero hay que tener en cuenta que:
Las operaciones de opciones no son muy activas, y a veces se producen situaciones en las que no se paga o no se vende, cuando los inventores cuantifican la base de la plataforma de negociación y detectan un valor de cero, que puede utilizarse para generar un error.SetErrorFilter("Invalid ticker")
No obstante, la mayoría de los bloggers no están de acuerdo con el informe.GetRawJSON
En el caso de las funciones que obtienen datos de envase de información primaria de los mercados, aquí escribo un ejemplo para implementar una función similar:
function init() {
SetErrorFilter("Invalid ticker")
}
$.GetTicker = function(e) {
var ticker = e.GetTicker()
if (!ticker) {
try {
var ret = JSON.parse(e.GetRawJSON())
return {
Info : ret,
High : ret.result.stats.high,
Low : ret.result.stats.low,
Buy : ret.result.best_bid_price,
Sell : ret.result.best_ask_price,
Last : ret.result.last_price,
Volume : ret.result.stats.volume,
OpenInterest : 0,
Time : new Date().getTime()
}
} catch (err) {
Log(err)
}
}
return ticker
}
La llamada dice:Log($.GetTicker(exchange))
La operación es muy sencilla, comparada con el comercio de futuros, solo hay dos direcciones de compra y venta.Sell
,Buy
Las funciones se ordenan.
function main () {
exchange.IO("base", "https://test.deribit.com")
exchange.SetContractType("BTC-27DEC19-7000-P")
var id = exchange.Buy(0.017, 1)
Log(exchange.GetOrder(id))
}
En el simulacro también aparecen los pedidos que acaban de hacerse.
Y tambiénexchange.GetOrder(id)
En la página web de la empresa, se puede consultar la información de los pedidos.
La misma aplicación se usa para retirar la cuenta.CancelOrder
La función es la misma que la retirada de dinero en el comercio de futuros.
Obtener activos disponibles en la cuenta es exactamente lo mismo que cuando se negocian futuros.GetAccount
La función puede ser.
Muestra en la página de la bolsa de simulación
Obtención del código de ejecución:
No se puede usar directamente el envase en el almacenamiento.GetPosition
La función de Deribit es la de los futuros y no de las opciones, por lo que se puede obtener solo el mantenimiento de futuros con esta función.
Por lo tanto, esto significa que tenemos que envasar nosotros mismos la función de obtener opciones.
Interfaz de función para obtener el almacenamiento en la API:
$.GetPosition = function(e) {
// /private/get_positions
// currency , kind
var positions = []
var currency = e.GetCurrency()
var arr = currency.split("_")
var baseCurrency = arr[0]
try {
var ret = e.IO("api", "GET", "/api/v2/private/get_positions", "currency=" + baseCurrency + "&kind=option")
for (var i in ret.result) {
if (ret.result[i].size == 0 || ret.result[i].direction == "zero") {
continue
}
var pos = {
Info : ret.result[i],
Amount : ret.result[i].size,
FrozenAmount : 0,
Price : ret.result[i].average_price,
Profit : ret.result[i].floating_profit_loss,
MarginLevel : 0,
Margin : 0,
ContractType : ret.result[i].instrument_name,
Type : ret.result[i].direction == "buy" ? ORDER_TYPE_BUY : ORDER_TYPE_SELL,
}
positions.push(pos)
}
} catch (err) {
Log(err)
positions = null
}
return positions
}
LlamadoLog($.GetPosition(exchange))
También se puede imprimir información sobre el almacén.
De esta manera, las operaciones básicas pueden ser realizadas, y el resto puede ser estudiado en estrategias de comercio de opciones.