Curso Gratuito - Trading IA
Uso y configuración de TradesTation

Hola, estoy intentando configurar la plataforma para ver el desempeño de la estrategia pero me pasan cosas que no entiendo y por más vueltas que le doy no consigo ver qué pasa. Por una parte las operaciones no hacen la salida cuando entiendo que deberían. Os adjunto un ejemplo:
Es la única operación que me dibuja y además la salida no la hace cuando debería. Se supone que había llegado al nivel de stop ya en en mínimo que hace después de la entrada y también en el gap anterior y sin embargo no salió. Además después de esa operación ya no me da ninguna más y sí que hubo.
Por dónde pueden ir los tiros?
Una duda que me surge es, ¿usais el mismo strategy para las ventas y para las comprar o tenéis un strategy para compras y otro para ventas? Supongo que para esta estrategia es sí, pero por saber si puede ser interesante para otro tipo de estrategias.
Comentarios
-
Una duda que me surge es, ¿usais el mismo strategy para las ventas y para las comprar o tenéis un strategy para compras y otro para ventas? Supongo que para esta estrategia es sí, pero por saber si puede ser interesante para otro tipo de estrategias.
En el mismo Strategy tienes que hacer todo, vamos se podra hacer lo que qjuieras, pero que problema le ves a hacerlo en uno solo?
Hola, estoy intentando configurar la plataforma para ver el desempeño de la estrategia pero me pasan cosas que no entiendo y por más vueltas que le doy no consigo ver qué pasa. Por una parte las operaciones no hacen la salida cuando entiendo que deberían. Os adjunto un ejemplo
No se lo que te pasa , pero me da que no es cosa de la plataforma sino de tu codigo(por pura logica), si pones detalles quizas podamos ayudarte, no podemos adivinar los problemas, o explicalo mas o pon el trozo de codigo que se supone deberia hacer que eso funcione
0 -
¿usais el mismo strategy para las ventas y para las comprar o tenéis un strategy para compras y otro para ventas?
Se gestionan desde funciones diferentes.
No se lo que te pasa , pero me da que no es cosa de la plataforma sino de tu codigo(por pura logica), si pones detalles quizas podamos ayudarte, no podemos adivinar los problemas, o explicalo mas o pon el trozo de codigo que se supone deberia hacer que eso funcione
Sí, ayudaría ver cómo lo estás haciendo.
0 -
Pues yo ahora mismo las ordenes a mercado las pongo tal que así:
// Orden de venta
SellShort("Venta") Next Bar at Market;
SetProfitTarget(deviationCortoSc1*100);
SetStopLoss(deviationCortoSc1*100); // Orden de compra
Buy("Compra") Next Bar at Market;
SetProfitTarget(deviationCortoSc1*100);
SetStopLoss(deviationCortoSc1*100);0 -
Usar setprofittarget es decirle cuando llegues a x $ cierras, no es un punto de salida, no se si es asi como quieres hacerlo
En este caso a deviationCortoSc1*100 $
0 -
De momento esa forma era para probar y ver el funcionamiento. Pero tampoco lo hace por $ o por lo menos yo no lo veo, porque cuando hago alguna modificación no lo coge como debería. De hecho cada orden sale a una distancia diferente y si tiene un número de contratos fijo, debería salir siempre igual. He probado también por contratos y tampoco. Está claro que algo estoy haciendo mal y lo sé, pero no consigo ver qué es. Voy a seguir probando y os cuento cuando lo solucione.
0 -
Cuando pones Next bar at market que vendes 1accion,no debería tener cantidad ❓
0 -
En la plataforma le pones el número de contratos por defecto al configurar la estrategia.
O también puedes ponerlos luego en las órdenes, pero si no los pones, coge los que tiene por defecto según lo entiendo yo.
Lo que me pasa es que pongo la orden y si se ejecuta el stop o el take en la misma vela de la entrada sí lo coge pero si los pongo más grandes y ya no los coge en esa misma vela, puede que luego los cierre o no, pero no sé el motivo por el que los cierra o no.
SetProfitTarget (Palabra reservada)
SetProfitTarget es una palabra reservada de stop incorporada que le permite especificar la cantidad de beneficios que desea obtener en función de la posición total, de un contrato o de una acción. Dentro de una estrategia, se genera una orden para cerrar toda la posición una vez que se ha alcanzado el objetivo de beneficios. Si el objetivo de beneficios se basa en una posición o en una acción/contrato, se determina mediante las palabras reservadas de la función Set: SetStopPosition, SetStopShare, orSetStopContracsCuando se utiliza con una estrategia automatizada en la que se generan órdenes en el mundo real, la orden límite de salida de beneficios se envía inmediatamente al mercado para ser ejecutada. Normalmente las estrategias generan órdenes al cierre de la barra para su ejecución en la siguiente barra, SetProfitTarget le permite generar órdenes y salir en la misma barra de entrada, esto es especialmente útil cuando se trabaja con barras de larga duración, (por ejemplo, 30-min, 60-min, diario, semanal, mensual) SetProfitTarget sólo se puede utilizar en una estrategia.
Ejemplos
Cuando se utiliza con la palabra reservada SetStopPosition, el parámetro Amount establece el stop loss como una cantidad en dólares para toda la posición basada en el número total de acciones o contratos en la posición abierta actual. (si usted tuviera 500 acciones de MSFT y especificara $200 de cantidad de ganancia, saldría $0.40 de su precio de entrada).0 -
Entonces el misterio es ta en tus condiciones ,prueba con algo sencillo tipo
If c>c[1] then begin Buy("Compra") Next Bar at Market; SetProfitTarget(100); SetStopLoss(100); end;
y vete compbrobando lo que si hace y no hace como quieres y luego vas cambiando las condiciones
0 -
Ya lo he hecho con mil cambios y lo que está claro es que yo estoy esperando que haga algo que no es lo que hace. Seguramente estoy usando mal la orden y por eso no obtengo el resultado esperado. Estoy revisando la documentación de easylanguage y probaré cosas diferentes a ver.
Puedes poner un ejemplo de cómo lo haces tú? con contratos?
0 -
Como veras, no tiene misterio, el fallo le tienes que tener en tus condiciones no en las ordenes en si, creo yo
if marketposition=0 and ………… then Begin
Condiciones S_prepocB = 1 ;esta es la que me asigna una variable activa para esta orden
IF S_prePocB= 1 then begin
Sellshort ("PrePOC-B") Ncontratos Contract next bar at close limit;en ncontratos pon el numero de acciones
end;
end; // SALIDA IF MARKETPOSITION = -1 and RPreB=10 THEN Begin if Barssinceentry=0 then miStop = maximo[1] ;//EN ESTE CASO EL STOP ES AHI
miProfit = entryprice +(Entryprice-miStop)*ratio ;//EL PROFIT AQUI
buy to cover ("Stop PrePoc_B") Ncontratos contract next bar at miStop stop ;
buy to cover ("Take PrePoc_B") Ncontratos Contract next bar at miProfit limit;
END;0 -
Voy a probar a hacerlo de esta manera a ver, pero si alguien puede explicarme por qué de la otra manera no funciona, también me gustaría, por saber qué es lo que hago mal y cómo funciona en realidad.
Muchas gracias Luismi en cuanto lo haya probado te comento.
0 -
Voy a probar a hacerlo de esta manera a ver, pero si alguien puede explicarme por qué de la otra manera no funciona, también me gustaría, por saber qué es lo que hago mal y cómo funciona en realidad.
De la otra manera si funciona, sera algo a mayores de tu codigo ,lo que te he puesto de c>c[1] lo he probado y funciona perfectamente , con 100 $ de profti y stop
0 -
Pues eso parece, lo he probado aislado y me funciona pero en mi código no. Ahora a averiguar qué pasa.
Gracias Luismi
0 -
Utiliza un showme para depurar antes de intentar testar cosas hasta q por magia funcione
Cuando vayas variable por variable y función por función viendo lo que pasa con cada una verás el fallo seguro
🇪🇦
1 -
Ya lo he hecho y el showme me funciona bien todo, pero el strategy no. Sigo con ello
1 -
¿Has hecho el showme de la forma que ves el mío, marcando en todo momento las señales y las posiciones activas hasta su cierre?
0 -
Sí, lo he hecho, el showme y el indicador para marcar también todos los parámetros.
0 -
Entonces ahora solo tienes que pasar las líneas que dibujas a las órdenes de la plataforma.
Limit si estamos esperando entrada y take/stop si estamos dentro.
Mismo código y en la parte final en lugar de dibujar, hacemos esto.
0 -
Solucionado
El problema no era el código, era en la configuración de la plataforma con el número máximo de barras de referencia del estudio, que estaba muy alto.
1
Categorías
- Todas las Categorías
- 19 Presentaciones
- 46 Nuestros sistemas (Curso gratuito)
- 70 Operativa y Sistemas de trading
- 44 Inversiones
- 12 Inteligencia Artificial y Optimización de Algoritmos
- 63 Plataformas
- 27 Programación e Inteligencia Artificial
- 21 Brokers
- 11 Bancos
- 31 Pruebas de fondeo
- 8 Psicología y Trading
- 6 Fiscalidad
- Emails
- 88 Otros temas