Orden#

La orden es la instrucción de la cuenta al emparejador para comprar o vender un token en el intercambio.

Par de Activos#

Cada orden contiene un par de activos de cantidad / precio, también llamado par de activos.

Ejemplo

"assetPair": {
    "amountAsset": "3QvxP6YFBKpWJSMAfYtL8Niv8KmmKsnpb9uQwQpg8QN2",
    "priceAsset": "null"
}

Campos del Par de Activos

Campos del Par de Activos#

Nombre del campo

Descripción

amountAsset

ID del primer activo del par, que el remitente de la orden quiere comprar o vender.

priceAsset

ID del segundo activo del par, en el que se expresa el precio de la orden. valor nulo significa que el activo es DecentralCoins.

Cantidad y Precio del Pedido#

En la interfaz de usuario, la cantidad y el precio generalmente se presentan como valores con una parte fraccionaria (por ejemplo, \(0.74585728\) DecentralCoins), es decir, en forma desnormalizada. La forma desnormalizada es conveniente para los humanos, pero no para los cálculos. Para resolver el problema de la precisión del cálculo, se realiza la normalización.

En la interfaz de usuario, la cantidad y el precio generalmente se presentan como valores con una parte fraccionaria (por ejemplo, \(0.74585728\) DecentralCoins), es decir, en forma desnormalizada. La forma desnormalizada es conveniente para los humanos, pero no para los cálculos. Para resolver el problema de la precisión del cálculo, se realiza la normalización, es decir, la cantidad y el precio se representan como un número entero. Entonces, \(0.74585728\) DecentralCoins es \(0.74585728 × 10^{8}\) o \(74585728\) Decentralitos. En este caso, el exponente es \(8\), porque DecentralCoins tiene \(8\) decimales después del punto decimal. Otros activos pueden tener diferente cantidad de decimales. Por ejemplo, TDX tiene 2 decimales.

Cantidad#

Considere comprar \(2.13\) TDX al precio de \(0.35016774\) DecentralCoins por una TDX. Aquí el par de activos es TDX / DecentralCoins. El importe del pedido es el número de unidades vendidas o compradas en «centavos» convencionales. Este valor en el caso actual es \(213\), ya que \(2.13\) TDX \(= 2.13 × 10^{2}\) = 213` penniesde TDX. Entonces, para llevar la cantidad a la forma normalizada, se multiplica por \(10^{amountAssetDecimals}\).

Precio#

El precio es el valor de 1 unidad de la cantidad del activo, expresado en el precio del activo. En el ejemplo anterior de TDX/DecentralCoins, este es el precio en DecentralCoins por 1 TDX. Para normalizar el precio, se multiplica por:

  • En órdenes de versiones 1, 2, 3: \(10^{(8 + priceAssetDecimals - amountAssetDecimals)}\).

  • En órdenes de la versión 4: en \(10^{8}\).

El exponente de \(8\) se selecciona porque no puede haber un activo con una cantidad superior de decimales en la cadena de bloques DecentralChain. El algoritmo del emparejador tiene una limitación en relación con el precio: los últimos N dígitos del precio normalizado deben ser ceros (N es precio_decimales menos cantidad_decimales). Si esto no es así, entonces el emparejador rechaza el pedido en la colocación.

Cálculo de Cantidad del Activo de Precio#

La cantidad del activo de precio en forma normalizada que:

  • Será proporcionado por el remitente si el pedido es de COMPRA.

  • Será adquirido por el remitente si el pedido es de VENTA.

Se calcula mediante la siguiente fórmula: amount × price ×:math:10^{(priceAssetDecimals - amountAssetDecimals - 8)}.

  • En órdenes de versiones 1, 2, 3: amount× price × \(10^{-8}\)

  • En los pedidos de la versión 4: amount × price × \(10^{(priceAssetDecimals - cantidadAssetDecimals - 8)}\).

Si el resultado del cálculo es un valor con una parte fraccionaria, entonces se descarta la parte fraccionaria. Designaciones en la fórmula anterior:

  • Amount — cantidad en forma normalizada.

  • Price — precio en forma normalizada.

  • PriceAssetDecimals — el número de lugares decimales del activo de precio.

  • AmountAssetDecimals — el número de lugares decimales del activo de cantidad.

Cancelación de Orden#

El remitente de la orden puede cancelar la orden antes de que se ejecute. Los pedidos no ejecutados se cancelan automáticamente en la fecha y hora especificadas por el remitente del pedido.

Fecha de Vencimiento de la Orden#

La fecha de vencimiento del pedido es la fecha y la hora de cancelación automática de un pedido no ejecutado. La fecha se especifica en milisegundos que han pasado desde el comienzo de la época de Unix. El tiempo de caducidad no puede ser anterior al tiempo del emparejador + \(1\) minuto ni posterior al tiempo de emparejador + \(30\) días.

Marca de Tiempo de la Orden#

La marca de tiempo del pedido es el momento en que el emparejador agregó el pedido al libro de pedidos. El tiempo se especifica en milisegundos que han pasado desde el comienzo de la época de Unix.

Formato Binario de Orden#

Consulte el formato binario de orden page.