Tuesday 21 November 2017

Cómo Backtest Sistema Comercial


Usted pregunta cómo crear un sistema de comercio en NinjaTrader (NT) y volver a probarlo. Se puede hacer, pero no es fácil. Sin entrar en la codificación y la arquitectura de software / diseño, sólo puedo darle una idea general de cómo uno podría ir sobre él. El primer paso es escribir un sistema comercial. De forma simplista, esto consta de varias partes: (i) escribir un módulo que contendrá todos los ajustes para los oficios que desea ejecutar (Identifique las condiciones que constituyen la oportunidad óptima para entrar en un comercio. (Ii) escribir un módulo que buscará esos conjuntos en sus datos en tiempo real, (iii) escribir un módulo que catalogará y guardará los ajustes encontrados en Los datos en tiempo real, y (iv) escribir un módulo que ejecutará un comercio basado en cualquiera de esos conjuntos. Esto en sí mismo es un reto, ya que esto debe hacerse en tiempo real. Además, debe manejar los casos en los que encuentre varias configuraciones que pueden estar indicando operaciones en las mismas direcciones u opuestas (es decir, largas y cortas). También es necesario considerar los objetivos, los criterios de rentabilidad para sus set ups, stop loss y los criterios de seguimiento. Por último, pero no menos importante, es necesario pensar en la escala de entrada y salida de las estrategias con su comercio configurar los criterios. Como aparte, ni siquiera he mencionado la verificación y el manejo de errores componentes del código, que tendrá que abordar también. Para hacer esto eficientemente, necesitará roscar este código. El problema con escribir esto en NT es que NT sólo soporta un subconjunto del lenguaje C y actualmente sólo proporciona soporte para el marco. Net 3.5. Esto significa que necesitará escribirlo en C como un dll y referenciarlo en su código NT. Ahora que ha escrito su DLL para identificar un comercio, tendrá que escribir código para ejecutar el comercio. NT ofrece un Managed y un enfoque no gestionado para hacer esto. Actualmente utilizo y codifico NT, y diré que esta parte de NT no está bien documentada, al menos no lo he encontrado, pero con toda justicia, puedes obtener ayuda del personal de NT en su foro de soporte. Usted querrá utilizar el enfoque no administrado para obtener la mayor flexibilidad. Por supuesto, querrá implementar alguna estructura de base de datos en su código para registrar sus operaciones. Esta parte del programa será un desafío también, porque hay algunos problemas que se encontrará aquí. Cada operación tendrá que ser verificada, las órdenes tendrán que ser secuenciadas y monitoreadas extremadamente bien, y su posición tendrá que ser observado cuidadosamente, especialmente si también planea entrar en operaciones cambiando posiciones. Ahora que ha llegado tan lejos, puede escribir una estrategia de NT para volver a probar su sistema. Una vez más, el enfoque no gestionado será de mayor valor aquí, ya que ofrece la mayor flexibilidad para usted. Una vez más, este código es difícil y no documentado particularmente bien. Sin embargo, se puede hacer. Enhorabuena, ahora ha terminado de codificar y puede comenzar a probar su código en vivo. Tal vez necesite modificar su código para tratar las condiciones en tiempo real en los datos en vivo. Dependiendo de los mercados que usted planea operar, tendrá que pensar cómo manejará el comercio durante los informes, la celebración de posiciones durante la noche, los límites de negociación, así como cuando el comercio se suspende por el intercambio. Asumiendo que usted ha hecho todo esto, ahora tiene un sistema de comercio probado de nuevo en NT. Como he dicho, no es fácil, pero es ciertamente factible. Una vez hecho esto, esté preparado para horas y horas (y horas) de trabajo y pruebas. Cuando comencé, subestimé groseramente el esfuerzo requerido. 1.3k Vistas middot Ver Upvotes middot No para ReproducciónHow to backtest trading system Hola. Im un comerciante noobie y hasta ahora me las arreglé para obtener 5k forex cuenta demo hasta cerca de 4k en un mes. No estoy muy contento con el resultado, pero de todos modos. He leído acerca de varios sistemas de comercio, includig rapirforex, increíble sistema de forex, surf, 123-froex, surefire forex trading y beneficios explosivos para nombrar pocos. Quisiera probar esos sistemas, y cualquier otro sistema que pueda encontrar usando datos históricos del mercado. Im primarly buscando una proporción del éxito para el sistema del ach. Hice algunas búsquedas en la red, pero no puedo localizar nada nada constructivo. ¿Qué software necesito para hacer eso. ¿Dónde puedo obtener datos de mercado forex histricista. Cualquier sitio web en particular que debería chack fuera. gracias por adelantado. Jan 30, 2005, 10:56 pm Se unió Nov 2004 ir a spreadtrade2win un gran sistema y foro y todo gratis. Jan 31, 2005, 6:53 am Se unió a marzo 2004 Publicado originalmente por aberry ir a spreadtrade2win un gran sistema y foro y todo gratis. Bueno backtestting software, youll necesidad de hacer algo de programación con el fin de utilizar tho (como la programación va no es que miedo) Publicado originalmente por SOCRATES Hay un montón de discusión en sitios web comerciales sobre el tema de backtesting. Esto me intriga y me perturba enormemente. También hay mucha discusión relacionada con los sistemas. ¿Cuáles son estos sistemas de los que está hablando? Me parece que puede estar hablando de verificar la eficiencia de un software en particular. ¿Es eso correcto? También me parece que puede estar discutiendo los méritos o demirits de métodos particulares. ¿Es eso también correcto o no? Sí, estoy tratando de probar el sistema en los datos históricos para encontrar ut lo exacto que es en el largo plazo. El sistema no es un software. Es un sistema de comercio, es decir, su supuesto para señalar buenas señales de compra / venta con mayor precisión posiblemente basado en análisis técnicos. Y, por cierto, im un programador por la educación, por lo que la programación no es un problema para mí Publicado originalmente por SOCRATES Hay un montón de discusión sobre los sitios web de comercio sobre el tema de backtesting. Esto me intriga y me perturba enormemente. También hay mucha discusión relacionada con los sistemas. ¿Cuáles son estos sistemas de los que está hablando? Me parece que puede estar hablando de verificar la eficiencia de un software en particular. ¿Es eso correcto? También me parece que puede estar discutiendo los méritos o demirits de métodos particulares. ¿Es eso también correcto o no? No puedo hablar de otros carteles, yo personalmente uso backtesting software como un medio de probar y aprender sobre diferentes estrategias. Soy también un programador por el comercio así que su una manera bastante familiar y cómoda de mí que prueba ideas contra datos genuinos. No presumo que sólo porque una estrategia funcionó en el pasado va a funcionar en el futuro, pero yo asumiría que tiene una mayor probabilidad de hacerlo. En lugar de decirle la mejor herramienta o proceso que puede utilizar para backtesting, permítanme en su lugar Centrarse en los errores más grandes que usted necesita evitar para hacer un backtest confiable. Estos son algunos de los factores más importantes que usted necesita para tener en cuenta cuando backtesting stock trading estrategias - Overfitting de datos: Este es, por mucho, el error más grande que la mayoría de la gente en la búsqueda de la creación de una estrategia que da espectaculares resultados backtested. Al crear la estrategia, si comienza a ajustar sus parámetros de una manera que maximiza los retornos, entonces esa estrategia muy probablemente fracasará miserablemente en condiciones reales. Hay 2 maneras de superar esto - fuera de la muestra de pruebas y la creación de estrategias basadas en la lógica en lugar de ajustar los parámetros de entrada. Sesgo prospectivo: Esto ocurre cuando se usan datos para generar señales que de otro modo no estarían disponibles en ese momento en el pasado. Por ejemplo, si el fin de año de una compañía es marzo y usted usa sus datos de ganancias para el año anterior el 1 de abril, es muy probable que la compañía no hubiera anunciado esos datos antes de mayo o junio. Eso resultaría en un sesgo prospectivo. Sesgo de supervivencia. Este es uno de esos errores difíciles de notar. Digamos que usted tiene una estrategia que las operaciones de una lista de 500 acciones de pequeña capitalización sobre la base de algunos indicadores técnicos. Lo más probable es que si intenta obtener datos de precios históricos de 10 años para estas 500 acciones para su backtesting, no incluirá los datos para todas las acciones que fueron retiradas de la lista en ese período de 10 años. Al probar su estrategia, no se daría cuenta de las operaciones posibles que se han generado en cualquiera de esas poblaciones malas si realmente había ejecutado esta estrategia durante ese período. Se centra exclusivamente en los retornos. Hay una serie de parámetros que debe considerar para juzgar la calidad de una estrategia. Concentrarse puramente en los rendimientos puede conducir a los principales problemas. Por ejemplo, si la Estrategia A proporciona 10 devoluciones durante un período determinado con una reducción máxima de -2 y la estrategia B da 12 vueltas con una reducción de -10, entonces B no es claramente una estrategia superior a A. Hay otros parámetros importantes Tales como reducción, tasa de éxito, relación de sharpe, etc. Impacto de mercado, cargos por transacción. Al considerar la viabilidad de una estrategia, es muy importante considerar el posible impacto en el mercado del comercio y también los cargos de transacción incurridos. Usted puede ser tentado a crear una estrategia que compra / vende grandes volúmenes de algunas acciones de baja liquidez que tienden a dar retornos excepcionales. Pero cuando usted va al mercado para ejecutar esta estrategia, una orden grande en una acción ilíquida moverá el precio que usted wouldnt ha factorizado en su prueba. Además, los costos de transacción también pueden alterar los rendimientos sustancialmente por lo que siempre debe mirar las ganancias netas. Data mining. Esto es bastante similar al problema de overfitting de datos. Si torturas los datos lo suficiente, confesará cualquier cosa. Este es un chiste común entre los científicos de datos que creen que si pasas el tiempo suficiente, puedes encontrar un patrón en casi cualquier conjunto de datos que no necesariamente significa que este patrón será válido en el futuro. Los fundamentos cambian. Podría muy bien suceder que usted encuentra una estrategia que realiza excepcionalmente bien en datos pasados. Pero un cambio fundamental en la dinámica del mercado podría hacer que esa misma estrategia fallara en el futuro. Es bien sabido que casi cualquier buena estrategia necesita seguir evolucionando con las cambiantes condiciones del mercado. Pequeño marco de tiempo. Es fundamental probar la estrategia durante un período de tiempo suficientemente largo y en condiciones cambiantes del mercado. Esto es especialmente cierto para las estrategias de negociación de valores que pueden realizar excepcionalmente bien en un mercado alcista, pero acabaría con su cuenta bancaria en un lado o el mercado bajista. Hay muchas otras cosas a considerar cuando backtesting. Pero finalmente, la única manera de asegurar que una estrategia funcione en condiciones reales es probarla en condiciones reales. Tauro Wealth es una empresa de tecnología financiera (Tauro Wealth) que busca solucionar los problemas que enfrentan los clientes de Tauro Wealth. Inversores minoristas en la India. Esperamos ofrecer soluciones integrales de inversión a largo plazo a una fracción de los costos tradicionales. 1.3k Vistas middot Ver Upvotes middot No es para Reproducción Pratik Jain. Editor Jefe: Tradingtuitions No hay nada tan superior como Amibroker cuando se trata de Backtesting. Es una de las herramientas más versátiles para el desarrollo y pruebas de sistemas de Trading. Tiene un backtest muy robusto y motor de optimización de la caja. Además, también proporciona una interfaz de backtester personalizada con la que puede jugar con las reglas y métricas predeterminadas de backtest. Compruebe hacia fuera los pocos artículos abajo que revuelven alrededor de Backtesting de Amibroker: 1.4k Views middot View Upvotes middot No para la reproducción He backtestado millares de estrategias que negocian, sobre todo para el mercado de la divisa, pero pienso su todavía relevante agregar mi respuesta aquí. Primero diría que el backtest es sólo una pieza de un rompecabezas. No confíe sólo en los resultados de la prueba. Es necesario ejecutar cientos de backtests para asignar al azar tamaño de propagación y simular el deslizamiento durante el backtest. Esto le dirá cómo su estrategia se comporta cuando la propagación está cambiando constantemente y es más grande de lo que usted consigue normalmente durante el comercio en vivo. Así como usted ve su importante para ejecutar una propagación con propagación de la variable que se registró en los datos de la marca histórica. Si utiliza la propagación fija sus resultados de prueba de nuevo puede no ser tan preciso. Por lo general, uso MetaTrader 4 para backtesting única estrategias y StrategyQuant a miles de backtest de ellos. Así que cuando se trata de MT4 siempre utilizo herramientas adicionales llamadas Tick Data Suite para obtener una extensión variable y 99 calidad de backtesting. Usted puede encontrar mi detallado paso a paso MT4 backtesting tutorial aquí en esta página: MT4 en su mayoría trabaja con los pares de divisas de divisas, pero también puede operar CFD en acciones. 246 Vistas middot ¿Cuál es la mejor métrica de pantalla para el stock? ¿Cuál es la mejor métrica de pantalla para el stock? Finanzas cuantitativas: Si uno tiene una estrategia de negociación algorítmica que tiene éxito en backtesting en Quantopian, cuáles son los próximos pasos ¿Cuáles son las principales diferencias entre Metatrader y Quantconnect para backtesting Estrategias algorítmicas de comercio ¿Cómo puedo realmente construir un backtest para una estrategia comercial en R o Python

No comments:

Post a Comment