6 votos

¿Implementación de código abierto del libro de órdenes de FAST?

Estoy buscando una implementación en c/c++ de Libro de pedidos . Necesito una implementación para reconstruir los datos del mercado a partir de FAST. No necesito hacer "matching" porque ya lo hizo por intercambio, solo necesito "agregar" dichas estructuras:

struct OrderUpdate {
    int32_t instrumentId;
    uint32_t MDEntryID;
    uint32_t MDUpdateAction;      // 0 - New 1 - Change 2 -Delete
    int64_t MDEntryPx_Mantissa;
    int16_t MDEntryPx_Exponent;
    int64_t MDEntrySize_Mantissa;
    int16_t MDEntrySize_Exponent;
    uint32_t RptSeq;
    uint32_t MDEntryTime;
    uint32_t OrigTime;
    int32_t SecurityTradingStatus;
    char MDEntryType;    // 0 - buy; 1 - sell; other values in documentation
    char MsgType;
};

El principal requisito es, por supuesto, la velocidad. He encontrado en internet varios proyectos:

Desgraciadamente, la mayoría de estas implementaciones son motores de "coincidencia" y no son exactamente lo que estoy buscando.

¿Qué es mejor utilizar para reconstruir la cartera de pedidos a partir de los mensajes FAST?

10voto

Alexander Gladysh Puntos 682

No se puede tomar simplemente una implementación de libro de órdenes de código abierto al azar y esperar que funcione. Cada mercado es diferente. Por ejemplo, los mercados tienen diferentes reglas para manejar la prioridad en el libro de órdenes (algunos son precio-tiempo, otros son precio-tamaño-tiempo, etc.). Tomar el código de Joe Blow y esperar que simplemente funcione sólo va a conducir al dolor y al fracaso.

Tiene dos cuestiones distintas. En primer lugar, debe descodificar los mensajes FAST y, en segundo lugar, debe construir un libro a partir de ellos basándose en las especificaciones de la bolsa y el mercado en cuestión.

Para que su pregunta esté siquiera bien formulada, debe indicar exactamente de dónde proceden los datos. Por supuesto, es probable que haya un 0% de posibilidades de que alguien pueda proporcionarle una referencia afirmativa donde pueda descargar un libro de órdenes que funcione para los datos que tiene.

Finanhelp.com

FinanHelp es una comunidad para personas con conocimientos de economía y finanzas, o quiere aprender. Puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X