Estaba pensando en escribir mi propio backtester y me doy cuenta de que tengo que hacer algunas suposiciones. Así que esperaba poder publicar lo que estoy planeando hacer y espero que algunos de ustedes puedan darme algunas ideas sobre cómo hacerlo mejor (estoy seguro de que hay mucho que se puede mejorar).
En primer lugar, mi estrategia consiste en mantener las acciones por lo general algunos días, no estoy haciendo (probablemente ninguna) operación intradía.
Así que esto es lo que estaba pensando. En primer lugar, compraría algunas comillas de acciones OHLC al minuto que cubran las acciones que me interesan (estoy pensando en comprar algunas de pitrading.com, ¿es su calidad aceptable?). Luego, si el algoritmo activa una compra o venta en alguna barra, "ejecutaría" la orden utilizando el máximo o el mínimo de la siguiente barra (intentando ser lo más pesimista posible). Una cosa que me resulta curiosa es el bid/ask, así que estaba pensando en añadir/restar unos céntimos para tenerlo en cuenta a la hora de comprar/vender. Me gustaría ver lo que estos valores han sido recientemente (diferencia entre la oferta y la demanda y la comilla de algunos datos recientes sobre estas acciones y luego sólo tiene que utilizar estos números como yo no sería backtesting tan lejos hacia atrás). Asumiría que puedo comprar/vender todo lo que quiera entonces a ese precio.
Por último, incluiría el coste de la comisión en el comercio. No tendría en cuenta el efecto que mi operación tendría en el mercado. ¿Existe alguna pauta aproximada que utilice el volumen para estimar cuánto tendría que comprar/vender para tener un efecto?
También simularía órdenes de venta stop-loss y éstas también se ejecutarían en el siguiente mínimo de la barra después de que el precio pasara el umbral.
Eso es todo, será bastante sencillo de implementar. Sólo espero que sea conservador para que me dé una idea de lo bien que funciona mi programa.
Cualquier opinión o crítica sobre este programa sería muy apreciada. Soy nuevo en esto y estoy seguro de que hay algunos detalles que estoy perdiendo.