Pregunta

Durante las últimas semanas me he encontrado con muchos artículos sobre el comercio de alta frecuencia.Todos hablan de lo importantes que son las computadoras y el software para esto, pero como todos están escritos desde un punto de vista financiero, no hay detalles sobre qué hace el software.

¿Alguien puede explicar desde el punto de vista de un programador qué es el comercio de alta frecuencia?¿Y por qué es tan importante la computadora/software en este campo?

¿Fue útil?

Solución

Para ampliar lo que Pablo dijo:

El servidor de ejecución de HFT o UHFT están casi siempre coubicarse en el centro de datos de la bolsa. Esto minimiza la latencia y también permite a los algos utilizan órdenes de Flash (que podrían ser prohibidos en breve) para obtener el primer vistazo al flujo de órdenes antes de la orden se emite en el mercado. muchos de Algo se evalúan una orden en tan sólo unos pocos milisegundos y esto es un juego donde la materia milisegundos. grupos comerciales se han conocido a sacar todas las paradas incluyendo la contratación de los desarrolladores del kernel para construir componentes del sistema operativo personalizados para optimizar mejor el tiempo entre cuando una orden golpea el NIC y cuando se adopte la medida resultante.

Hay un par de cubos grandes de las estrategias que están siendo utilizados comúnmente en la actualidad:

La primera es el comercio frente a los pedidos grandes bloques. Para utilizar el ejemplo de Pablo de comprar un millón de acciones de IBM, HFT algo de se busca para la compra de presión. A las empresas de computadoras en diferentes intercambios y fondos oscuros tendrán que compartir información ya que el pedido se divide y se ejecuta normalmente a través de múltiples intercambios y fondos oscuros. Un HFT algo va a utilizar modelos estadísticos / máquina aprendido a predecir el tamaño de la presión de compra y si se determina que hay suficiente también se acumulará acciones de todos los mercados y tratar de venderlos a un precio ligeramente superior.

El segundo es la liquidez de negociación de descuentos en los intercambios pagarán los participantes del mercado para fomentar la liquidez. ( Ver Direct Edge precios ) Las acciones que se compran o se venden sólo puede ser realizada por un muy corto periodo de tiempo. El objetivo es sólo para recoger el cheque y el punto de equilibrio en todo lo demás.

En ambos tipos de estrategia la idea es hacer monedas de un centavo (o fracciones) en un comercio y hacer esto muchas veces por día.

Como se habrán dado cuenta que hay un montón de puestos de trabajo disponibles HFT y por lo tanto las operaciones son cada vez más lleno de gente. Veo esto como una especie de arb estadístico desde la década de 2000 y, finalmente, el comercio no será muy rentable ya que muchos jugadores están tratando de hacerlo.

En cuanto a por qué el software es importante: milisegundos materia. La latencia es muy importante y el código tiene que ser apretado, rápido y roca sólida y estable. Tener un accidente de algo y ser atrapados con acciones cuando el mercado se mueve en su contra no es muy rentable. Ingeniería de estos requisitos es necesariamente diferente y requiere diferentes habilidades. Crujido de la cartera de pedidos en tiempo real no requiere un poco de potencia y buenos algoritmos. Es divertido e interesante sin embargo.

Otros consejos

Hay dos partes en cualquier sistema HFT:

  1. en tiempo real de negociación muy baja latencia - suscribirse a la cartera de pedidos y el precio de información en tiempo real a partir de muchas fuentes diferentes, ejecutar algoritmos calibrados diseñados para o bien ejecutar una orden grande con un deslizamiento mínimo (es decir que desea comprar 1 millón acciones de IBM por el final del día sin mover el mercado demasiado), o simplemente para tratar de hacer estadísticamente dinero basado en el arbitraje a corto plazo. Este sistema también tiene que proporcionar buenas herramientas de gestión de riesgos y condiciones de permitir que uno o más operadores humanos para supervisar y controlar lo que hace el sistema de manera eficaz.

  2. Durante la noche / semanal etc. análisis de grandes cantidades de "datos de la garrapata", (datos históricos sobre los sistemas de actividad de comercio anterior precio, tiempo e información de la cartera de pedidos, y) en busca de optimizar y "buscar" la mejor algoritmos para ser ejecutados en tiempo real por parte # 1. es decir, "calibrar" y probar los algoritmos que se ejecutarán en # 1.

El primero requiere baja latencia y extremadamente buen acceso a los mercados (es decir, una conexión de red directa para el intercambio con los saltos mínimo). Esta parte normalmente tiene que ser escrito en un lenguaje no-GC como C o C ++ (una demora de medio segundo, mientras que el recolector de basura se detiene el mundo podría ser muy costoso). El segundo requiere generalmente una rejilla y un montón de buena simulación y software de análisis estadístico, AI algoritmos etc.

Sólo añadiría que las aplicaciones más frecuentes en este tipo de comercio tienden a ser CEP (procesamiento de eventos complejos).Algunos ejemplos son Streambase, Apama y Aleri.Por otro lado, para manejar cantidades masivas de datos, la gente utiliza bases de datos de alta velocidad, como KDB, OneTick y Vhayu.

Si desea comprender el tipo de desafíos técnicos, le sugiero que consulte primero a estos proveedores.Sus materiales de marketing le darán una buena idea de las aplicaciones comerciales y de los desafíos técnicos.

En ciertos momentos (por ejemplo sobre una caducidad de futuros), es necesario hacer miles de operaciones de un minuto -, obviamente, los humanos no pueden hacer esto sin ayuda. Esto por cierto es un momento muy estresante para el programador, como si algo va mal, no hay casi ninguna posibilidad de recuperación -. Programadores tienden a ver sus archivos de registro consulte el streaming por tanto con el corazón en la boca

Es necesario realizar un seguimiento de los precios, de forma rápida decidir lo que va de arriba a abajo y de comprar y vender en consecuencia. Puesto que hay un montón de diferentes posiciones negocian el mejor software que se utiliza para que el análisis y ofertas que realizan el más dinero que potencialmente puede hacer.

Mejor que significaría frecuencia actualización de datos, identificando las tendencias interesantes de tal manera que pueda reaccionar rápidamente a ellos, ser fácil de usar al realizar operaciones frecuentes.

  

¿Por qué es el ordenador / software de manera importante en este campo?

La mayor rendimiento y menor latencia es deseable, ya que el más rápido que se puede reaccionar a las cosas, más dinero que potencialmente puede hacer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top