Ingenuity System Testing Services Estudio de Caso Altova XMLSpy y MapForce ayudan a analizar los resultados de 30.000 pruebas automatizadas del sistema. Ingenuity System Testing Services Ltd. combina las pruebas de sistemas puros y técnicas de gestión de la calidad con iniciativas de gestión de riesgos de negocio para crear y administrar pruebas de sistemas de software complejos. Ingenuity opera como un socio con desarrolladores y usuarios finales durante el desarrollo de software para permitir a los clientes tomar decisiones comerciales calificadas sobre los sistemas de los que dependen para el éxito. Ingenuity se especializa en probar sistemas de software que soportan el dinámico mercado en tiempo real para el comercio electrónico de instrumentos de seguros. Estos sistemas de seguros suelen incluir un motor de presupuesto que comunica las características de los aseguradores de productos individuales y un componente de proceso de negocio EDI (Electronic Data Interchange) para completar las transacciones. Si bien el estándar EDI proporciona elementos fijos, como conjuntos de preguntas y formatos de mensajes, hay importantes variaciones específicas del producto que también deben comunicarse, y es crítico que estos sistemas representen con exactitud cada producto de seguro. Agregando otro nivel de complejidad, el software del sistema de seguros en este estudio de caso fue escrito por un contratista contratado por las compañías de seguros, y el sistema tuvo que demostrar capaz de describir muchas alternativas de productos en un entorno con frecuentes cambios en el producto. Ingenuity se ha ganado una reputación de entrega oportuna, integridad y profesionalidad, con más de diez años de experiencia en el campo y muchos clientes entre las 10 principales aseguradoras en varias categorías. Sus acciones les han permitido mantener y mejorar esta reputación ante los crecientes requerimientos técnicos. Simon Mills, Director Gerente de Ingenuity El proyecto requirió Ingenuity para colaborar con un desarrollador de software independiente en un motor de validación para una actualización importante de los desarrolladores existentes de comercio de seguros sistema. Esta utilidad sería utilizada por Ingenuity para probar a fondo el sistema de desarrolladores y sería proporcionada a las compañías de seguros para ayudarles en sus propios esfuerzos para implementar la actualización y validar el sistema actualizado. El éxito de la realización de pruebas independientes fue una obligación contractual entre la compañía de seguros y el desarrollador de software. La entrega requerida de Ingenuity era la verificación, a través de su serie de pruebas, de que el motor de validación de software creado por el desarrollador produjo resultados precisos y que el software del sistema de seguros realizado como el desarrollador representado. El motor de validación fue diseñado para enviar un conjunto de parámetros al sistema de seguros que simulan una licitación de producto, una solicitud de un usuario, o algún otro conjunto normal de entradas de sistema. El sistema procesa la entrada y el motor de validación registra y entrega la salida al probador que documenta los resultados. A continuación, el probador compara los resultados reales con los resultados esperados y concilia cualquier diferencia para determinar si el sistema funciona correctamente o no. Ingenuity no simplemente realizó pruebas de aceptación en el lanzamiento final al final del proyecto. Ingenuitys probadores trabajaron en tándem con los desarrolladores de software, comprobando cada iteración de desarrollo a medida que se completó. Basado en esfuerzos previos probando sistemas de trading de seguros, Ingenuity ya tenía cientos de planes de prueba e innumerables miles de pruebas unitarias que serían aplicables al nuevo sistema. Los datos de prueba de las entradas de la muestra y los resultados esperados se almacenaron en formatos específicos utilizados por los sistemas anteriores. La colección de resultados de la prueba contenía complejas variaciones de los resultados que Ingenuity extraería, reformatear en texto usando una rudimentaria utilidad interna de conversión e ingresar en una utilidad comparadora basada en Lotus para su análisis. Sin embargo, la nueva versión del sistema no era compatible con los formatos de datos anteriores. El nuevo sistema requería entrada de archivos XML y proporcionaba resultados de resultados XML. El equipo de desarrollo de software utilizó un proceso de desarrollo rápido y requirió a los probadores para mantenerse al día. Los desarrolladores también tenían el hábito de alterar los esquemas XML para satisfacer las demandas del momento y no siempre documentar adecuadamente sus últimos cambios. Estamos probando a expertos, no desarrolladores a tiempo completo, dijo Simon Mills, Director General de Ingenuity. Pero somos altamente calificados en crear nuestras propias utilidades. Para nuestra primera ronda de pruebas contra el nuevo sistema elegimos utilizar Lotus para mapear los datos de entrada y salida en el formato correcto y luego formarlos en XML. Nuestra herramienta de análisis inicial para convertir el formato anterior de nuestras pruebas a XML e interpretar los archivos de resultados, mientras que manejable, iba a tomar de cinco a seis días-hombre para hacer robusto, continuó Mills. Por otra parte, tuvimos que crear nuevas reglas de análisis para cada variación de los resultados de salida, y podríamos esperar a repetir este esfuerzo con cada iteración de software como los desarrolladores cambiaron sus esquemas. Dado que tanto la entrada de prueba como los archivos de resultados estaban en XML, un enfoque nativo-XML para administrar los datos de prueba parecía más lógico y potencialmente más eficiente. El equipo de Ingenuity investigó las tecnologías XML probando todas las utilidades de manipulación XML que podrían encontrar en Internet, según Mills. Se hizo evidente que la suite Altova de herramientas XML había sido ideada para hacer que las cosas pasaran, dijo. En primer lugar, el equipo Ingenuity determinó que no tenían que confiar en la documentación de los desarrolladores de software de los esquemas XML para sus archivos de entrada y resultados. Dado que tanto la entrada como los resultados eran archivos XML, Ingenuity utilizó Altova XMLSpy para abrir los archivos de entrada de muestra y resultados proporcionados por el desarrollador y generar los esquemas automáticamente usando el comando Generar DTD / Esquema incorporado en las aplicaciones. La selección de menú DTD / Esquema XMLSpy Generate facilita la creación de un esquema a partir de un documento XML de ejemplo. El diálogo XMLSpy Generate DTD / Schema le permite controlar los escenarios de enumeración y la representación de elementos complejos durante la creación del esquema. A continuación, Ingenuity utilizó Altova MapForce para extraer los resultados relevantes, realizar los cálculos necesarios y generar una tabla fácilmente comprensible en el formato basado en texto requerido por su utilidad de análisis local. Para mapear los datos en el formato necesario, un esquema generado XMLSpy del paso anterior se insertó por primera vez en el panel de diseño de aplicaciones y se vinculó a un documento de resultados XML correspondiente como origen de datos. A continuación, se especificó un archivo de texto como destino de la asignación de datos con todas las configuraciones apropiadas definidas. Para realizar cálculos y manipular los datos en la estructura de salida requerida, las reglas estándar de procesamiento de datos se arrastraron simplemente desde la ventana de las funciones de MapForce y se dejaron caer en el diseño de mapeo. A continuación, las líneas de conexión se extrajeron de los elementos de datos de origen de XML Schema, a través de las reglas de procesamiento de datos según sea necesario, a los elementos de datos de destino en el nuevo archivo de texto. Eso es todo lo que había. La salida de cada mapeo de datos se guardó en un archivo y se abrió sin problemas en la utilidad de análisis de Ingenuitys. El tiempo de desarrollo total desde la creación del esquema hasta el refinamiento del mapeo fue de menos de cuatro horas para un solo ingeniero de ingeniería. Los archivos de texto en formato CSV o tabulados son a menudo el menor denominador común entre sistemas incompatibles. MapForce ofrece un amplio control sobre los archivos de texto. La ventana auxiliar de Bibliotecas de funciones de MapForce facilita el acceso a las funciones de procesamiento de datos que se pueden realizar en los datos de origen como parte de la integración. Los probadores Ingenuity crearon esta asignación MapForce para extraer información crítica del archivo de resultados basado en XML que se muestra a la izquierda y crear tablas basadas en texto mostradas a la derecha. Analizar el archivo de resultados de una prueba de referencia duró 45 minutos con Ingenuitys original parsing utilidad. En contraste, el método MapForce procesó los mismos datos en 11 segundos. El acercamiento que Ingenuity llevó con MapForce permitió que los resultados de 30.000 pruebas automatizadas, creando entre 90.000 y 100.000 resultados, estuvieran disponibles para la comparación automatizada en menos de 6 minutos, de principio a fin. Ingenuity estima que la diferencia que ha hecho con el esfuerzo total de la prueba es más de 100 veces, ya que las pruebas tenían que repetirse en cada iteración de desarrollo del sistema de comercio de seguros. En el pasado, los planes de prueba estaban limitados por las presiones de los plazos. Siempre hemos tenido que concentrarnos en las mejores 100 a 200 pruebas utilizando sólo dos productos de seguro de la muestra, explicó Mills. Cuando el conjunto completo de pruebas pertinentes es de alrededor de 700 y el número total de productos de seguros manejados por el sistema podría ser 36, la absoluta velocidad de nuestro nuevo proceso nos ha permitido ampliar enormemente la definición de las pruebas ideales. Esto no es hacer más pruebas porque podemos, está haciendo todas las pruebas que nos hubiera gustado hacer, pero que las limitaciones de tiempo impidió en el pasado. Estaban creando mucha más certeza para nuestros clientes. Muchos de nosotros no tuvimos más que una apreciación técnica de XML antes de tener que usarla y vivir con ella para este proyecto, dijo Bill Gribble, Director Técnico de Ingenuity. Los tutoriales que vienen con los productos de Altovas demostraron ser perfectamente suficientes para mover técnicamente a los técnicos a expertos en muy breves períodos de tiempo. Tenemos la intención de mover todos nuestros ejercicios de mapeo, de los cuales tenemos cientos, en el entorno de Altova MapForce, concluyó. Descubra cómo MapForce puede ayudar con su desafío de integración de datos. Cómo iniciar el comercio: Prueba de su plan de comercio Una parte integral del desarrollo del plan de comercio está probando el sistema para determinar su expectativa cuánto dinero podría hacer el sistema en un mercado vivo La mayoría de nosotros Han visto las advertencias publicadas en varios sitios Web financieros y literatura sobre cómo el rendimiento del pasado no es indicativo de los resultados futuros. Si bien esto es ciertamente cierto de los planes de comercio, hay medidas que puede tomar para determinar si un plan es probable que tenga éxito en el futuro: Tebacktesting y pruebas de rendimiento hacia adelante. 13 Backtesting 13 El término backtesting se refiere a probar un sistema comercial en datos históricos para ver cómo se habría realizado durante ese período de tiempo. La mayoría de las plataformas de comercio de hoy apoyan backtesting, y usted puede probar rápidamente ideas sin arriesgar el dinero en su cuenta comercial. El backtesting se puede utilizar para evaluar ideas simples, tales como cómo un crossover del promedio móvil realizaría o sistemas más complejos con una variedad entradas y disparadores. 13 13Si es necesario, puede contratar a un programador calificado para traducir una idea a un formulario comprobable. Un programador puede codificar la idea utilizando el lenguaje propietario utilizado por su plataforma de negociación, integrando variables de entrada definidas por el usuario que le permitirán ajustar el sistema. Por ejemplo, un sistema simple de crossover de media móvil podría incluir entradas para las longitudes de las dos medias móviles usadas en el sistema, luego se podría volver a probar para determinar qué longitudes habrían realizado el mejor de los datos históricos. 13 13La prueba de ventas puede ser falsamente alentadora porque un sistema no rentable puede ser mágicamente transformado en una máquina de hacer dinero con unas pocas optimizaciones. La realidad, sin embargo, es que ajustar un sistema para encontrar el mayor nivel de rentabilidad por lo general conduce a un sistema que realiza mal en el comercio en vivo. Con suficiente ajuste, prácticamente cualquier sistema de comercio podría mostrar cerca de 100 de rentabilidad, pero no sería realista. El ajuste de curvas implica modificar o optimizar el sistema para crear el mayor porcentaje de operaciones ganadoras o el mayor beneficio en los datos históricos utilizados en el período de prueba. A pesar de que hace que un sistema se vea fantástico en los resultados de backtesting, conduce a sistemas poco fiables, ya que los resultados son esencialmente diseñado para un período de tiempo que ya ha pasado. Backtesting y la optimización proporcionan muchos beneficios, pero es sólo una parte del proceso al evaluar un sistema comercial. El siguiente paso es aplicar el sistema a nuevos datos históricos. 13 Datos de la muestra versus los datos de la muestra 13 Es beneficioso reservar un período de datos históricos para fines de prueba. Los datos históricos iniciales sobre los que se prueba y optimiza una idea se conocen como datos incluidos en la muestra y el conjunto de datos que se ha reservado se denomina datos fuera de muestra. Este conjunto limpio de datos es una parte importante del proceso de evaluación porque proporciona una manera de probar la idea en datos que no han influido en el proceso de optimización. Esto puede darle una mejor idea de cómo el sistema se llevará a cabo en el comercio en vivo. 13 13 Antes de iniciar cualquier backtesting o optimización, puede reservar un porcentaje de datos históricos para pruebas fuera de la muestra. Un método consiste en dividir los datos históricos en tercios y segregar un tercio para su uso en las pruebas fuera de la muestra. Recuerde, sólo los datos de la muestra deben usarse para la prueba inicial y cualquier optimización. 13 13Una vez que se ha evaluado un sistema comercial con datos incluidos en la muestra, puede aplicarlos a los datos no incluidos en la muestra. Si existe una baja correlación entre las pruebas en la muestra y fuera de la muestra, es probable que el sistema esté sobre-optimizado y que no tenga un buen rendimiento en las transacciones en vivo. Si existe una fuerte correlación, la siguiente fase de evaluación es un tipo adicional de prueba fuera de la muestra conocida como prueba de rendimiento directo. 13 Pruebas de rendimiento avanzadas 13Las pruebas de rendimiento avanzadas, también conocidas como transacciones de papel, le proporcionan otro conjunto de datos para evaluar un sistema. Las pruebas de desempeño avanzadas son una simulación de transacciones reales e implican seguir la lógica de sistemas en un mercado activo. Todas las operaciones se ejecutan en papel solamente (es decir, no se realizan operaciones reales) y las entradas y salidas comerciales se documentan junto con cualquier beneficio o pérdida para el sistema. 13 13Muchos corredores proporcionan cuentas comerciales simuladas en las que puede realizar operaciones sin arriesgar dinero real. El comercio simulado (o comercio sim) le permite probar aún más su sistema, al mismo tiempo que proporciona una valiosa práctica de entrada de pedidos. Si el sistema muestra resultados positivos con una buena correlación entre las pruebas de rendimiento dentro de la muestra, fuera de la muestra y hacia adelante, puede estar listo para ser puesto en un mercado activo. Si carece de correlación, sin embargo, el sistema requiere más investigación antes de que pueda ser negociado con éxito. Ahora que usted tiene un sistema de comercio diseñado y codificado, es hora de probarlo para asegurarse de que su codificación está libre de errores lógicos y técnicos. También vamos a ver algo conocido como optimización - una característica de algunos programas de comercio que le permite afinar sus reglas de comercio para adaptarse a las acciones que usted planea en el comercio. Prueba de su sistema de comercio La gran mayoría de las aplicaciones comerciales que soportan lenguajes de programación también admiten las herramientas de prueba. Estas herramientas se dividen en dos categorías: 1. Las herramientas técnicas de pruebas técnicas buscan errores técnicos en su código. Por ejemplo, si olvida agregar un punto y coma después de una sentencia, la herramienta de pruebas técnicas le notificará que su declaración no es válida. La ubicación de la herramienta de pruebas técnicas depende de la aplicación comercial utilizada. MetaTrader muestra un error o resultados defectuosos cuando intenta compilar su código, mientras que las aplicaciones de comercio como Tradecision tienen una utilidad de comprobación de código incorporada en la interfaz que le permite comprobar su código antes de aplicarlo. 2. Las herramientas lógicas de pruebas lógicas buscan errores lógicos en su código. Por ejemplo, si usó un signo mayor que en lugar de un signo menos que (lo que no es un error técnico), una herramienta de prueba lógica le mostrará que sus resultados no tienen sentido. La herramienta de prueba lógica más popular es la herramienta de backtesting. Esta herramienta le permite tomar datos pasados y aplicar su sistema de comercio a esos datos. Esto le da una idea de lo siguiente: Si su sistema comercial es rentable 13 ¿Qué condiciones resultan ser más rentables? 13 Donde podrían existir errores en sus reglas (Para más información, vea Backtesting: Interpretando el pasado.) Solución de problemas de su comercio Sistema Como con cualquier otro tipo de programación, la solución de problemas puede ser una tarea tediosa y difícil. Encontrar errores en su código requiere clasificar sistemáticamente a través de su código para identificar errores sintácticos que, aunque a menudo menores, pueden detener su programa. Estos son algunos errores comunes a buscar: Faltan semicolones después de declaraciones - Estos tienen que ser después de cada declaración. 13 Variables no definidas - Recuerde que tiene que declararlas antes de usarlas 13 Errores ortográficos - Si algún nombre o función está mal escrito, la aplicación comercial devolverá un error (ver ejemplo a continuación). 13 Uso incorrecto de () - Recuerde que asigna un valor a otro valor, mientras que significa igual a. 13 Uso incorrecto de funciones incorporadas - Consulte la documentación de las aplicaciones comerciales o la interfaz de programación de aplicaciones (API) para asegurarse de que está utilizando la sintaxis correcta. Algunas aplicaciones comerciales contienen una función que le permitirá probar su código antes de usarlo o compilarlo. Esta función le permite ver cuál es el error y en qué línea se puede encontrar. Tome Tradecision por ejemplo: Aquí podemos ver que Tradecision nos da la ubicación (línea y columna) del error, una descripción del error y el tipo de error (en este caso, es sintáctico). Si observamos la expresión, podemos ver que en la columna 8 xrossBelow no es una función válida. Si reemplazamos el x (que está en la columna 8) con un c, entonces tendremos un código válido. Si miramos a MetaTrader, podemos ver que los errores surgen cuando tratamos de compilar el programa: Aquí podemos ver que en la descripción dice que la variable BuyNow no estaba definida. Si hace doble clic en este mensaje de error, nos llevará a la ubicación específica del error en el código. Como puede ver, la mayoría de las aplicaciones comerciales le proporcionan una manera fácil de localizar errores técnicos y corregirlos. Corregir los errores simplemente implica sistemáticamente pasar por cada mensaje de error y luego recompilar el código y / o aplicar el sistema de comercio a sus cartas. Optimización de su sistema de comercio Algunas aplicaciones comerciales le permiten seleccionar las variables que se optimizarán. Tradecision, por ejemplo, le permite seleccionar fácilmente una variable y reemplazarla con código que intentará la optimización. La optimización en sí es simplemente un proceso que encuentra el valor óptimo para un elemento del sistema de comercio en particular basado en los resultados y el rendimiento anteriores. Tenga en cuenta que la sobre-optimización resulta en sistemas comerciales que no pueden adaptarse a las condiciones del mercado por lo tanto, es importante optimizar sólo algunas variables importantes, no todas las variables Aquí se muestra lo que la característica de optimización parece en Tradecision: Dos nuevas variables y las ponen igual a. Simplemente significa que el programa de comercio reemplazará esto con el número óptimo. A continuación, puede ver que hemos utilizado las nuevas variables dentro de nuestra estrategia comercial. Finalmente, establecemos un rango para los números (para que el programa no busque al infinito). Algunos otros programas de comercio tienen características que operan de una manera similar, lo que le permite reemplazar el valor numérico con un y decirle a la aplicación de comercio para optimizarlo. Conclusión Por ahora usted debe haber desarrollado un sistema de trabajo de comercio en el que usted puede tener confianza. En la siguiente parte de esta serie, aprenderá cómo aplicar su sistema de comercio a los gráficos y cómo utilizarlo para tomar decisiones comerciales Suscribirse a noticias para utilizar para las últimas ideas y análisis
Market Makers vs Agencia Modelo Brokers Obtener Forex comprar / vender señales directamente a su correo electrónico y por SMS. Para saber más haga clic aquí Mucho se ha dicho acerca de estos tipos de negocio de corretaje, pero estamos aquí para mostrarle una opinión sabia, pero impopular. Últimos años Market Makers han sido culpados por todo el mal en el mercado de divisas, ya que estos corredores están esperando realmente un comerciante a perder el dinero. Agencia de corredores modelo, también conocido como A-Book corredores, han sido elogiados como las empresas que prestan servicios a los comerciantes sin ningún tipo de conflicto de intereses. Los recientes acontecimientos del jueves negro han cambiado enormemente la situación, ya que eran en su mayoría agencias de modelos de corredores que han perdido mucho. Como algunos corredores se convirtió en insolvente, la comunidad comercial comenzó a cuestionar si los fabricantes de mercado son en realidad una mala elección. Sigue leyendo pa...
Comments
Post a Comment