Cómo a entrar a mejor precio después de un stop loss

Mar 31, 2023 | EasyLanguage, TradeStation

Cómo volver a entrar a mejor precio después de un stop loss

Un lector de este blog quería saber cómo podría volver a ingresar a una posición a un mejor precio si el primer intento resultaba ser perdedor. Aquí estoy trabajando con barras de 5 minutos, pero los conceptos también funcionan para barras diarias. La barra diaria es bastante más fácil de programar.

ES.D Day Trade usando Break Out de 30 minutos

Aquí vamos a esperar los primeros 30 minutos para desarrollar un canal en el máximo más alto y el mínimo más bajo de los primeros 30 minutos. Pasados ​​los primeros 30 minutos y antes de las 12:00 horas hora del este, colocaremos una parada de compra en el canal superior. La parada inicial para esta entrada inicial será el canal inferior. Si nos detenemos, volveremos a entrar en largo en el punto medio entre el canal superior e inferior. La salida para esta segunda entrada será el canal inferior menos el ancho del canal superior e inferior.

Aquí hay algunas fotos. En cierto modo, funcionó aquí, bueno, el código funcionó perfectamente. El empuje inicial sopló a través del canal superior y luego se consolidó, distribuyó y se estrelló de inmediato a través del canal inferior. Los alcistas querían otra oportunidad, así que lo empujaron a la mitad del camino y luego, inmediatamente, los bajistas entraron y jugaron tira y afloja. Al final ganaron los toros.

a
Error de ruptura inicial. Pero la 2ª Entrada hizo un poco.
Aquí los toros tenían el control inicial y luego los osos, y luego los toros y finalmente los osos volcaron la canoa.
aa
Lo intentamos como en la vieja universidad, ¿verdad, muchachos?

Este tipo de lógica se puede aplicar a cualquier algoritmo de comercio diario o comercio oscilante. Aquí está el código para la estrategia.


//working with 5 minute bars here
//should work with any time frame

input:startTradeTime(0930),numOfBarsHHLL(6),stopTradeTime(1200),maxLongEntriesToday(2);
vars: startTime(0),endTime(0),
barCountToday(0),totTrades(0),mp(0),longEntriesToday(0),
periodHigh(-99999999),periodLow(99999999);

startTime = sessionStartTime(0,1);
endTime = sessionStartTime(0,1);

if t = calcTime(startTime,barInterval) Then
begin
periodHigh = -99999999;
periodLow = 99999999;
barCountToday = 1;
totTrades = totalTrades;
end;

if barCountToday <= numOfBarsHHLL Then
Begin
periodHigh = maxList(periodHigh,h);
periodLow = minList(periodLow,l);
end;

barCountToday = barCountToday + 1;

longEntriesToday = totalTrades – totTrades;

mp = marketPosition;
if t <= stopTradeTime and barCountToday > numOfBarsHHLL Then
Begin
if longEntriesToday = 0 then
buy(«InitBreakOut») next bar at periodHigh + minMove/priceScale stop;
if longEntriesToday = 1 Then
buy(«BetterBuy») next bar at (periodHigh+periodLow)/2 stop;
end;

if mp = 1 then
if longEntriesToday = 0 then sell(«InitXit») next bar at periodLow stop;
if longEntriesToday = 1 then sell(«2ndXit») next bar at periodLow – (periodHigh – periodLow) stop;

SetExitOnClose;


Los conceptos clave aquí son las limitaciones de tiempo y cómo cuento las barras para calcular el primer canal de 30 minutos. He tenido problemas con la función de entradas Hoy de EasyLanguages , así que me gusta cómo lo hice aquí mucho mejor. En la primera barra del día, establecí mi variable totTrades  en totalTrades  integrado de EasyLanguages ​​(¡observe la diferencia en la ortografía!) La palabra clave TotalTrades  se actualiza inmediatamente cuando se cierra una operación. 

Entonces, simplemente resto mis totTrades (el número total de transacciones al comienzo del día) de totalTrades.  Si  se incrementa  totalTrades (se cierra una operación)entonces la diferencia entre las dos variables es 1. Asigno la diferencia de estos dos valores a longEntriesToday . Si longEntriesToday = 1, entonces sé que ingresé mucho tiempo y me detuve. Entonces digo, está bien, volvamos largos a un mejor precio: el punto medio. Uso la variable longEntriesToday nuevamente para determinar qué salida usar. Con un poco de suerte, el impulso inicial que nos llevó a posiciones largas al principio volverá al mercado para otra oportunidad.

Es fácil crear un indicador basado en la estrategia

Una vez que desarrolla una estrategia, el indicador que traza los niveles de entrada y salida es muy fácil de derivar. Ya ha hecho los cálculos, solo grafique los valores. Mira esto.

 

//working with 5 minute bars here
//should work with any time frame

input:startTradeTime(0930),numOfBarsHHLL(6);
vars: startTime(0),endTime(0),
barCountToday(0),periodHigh(-99999999),periodLow(99999999);

startTime = sessionStartTime(0,1);
endTime = sessionStartTime(0,1);

if t = calcTime(startTime,barInterval) Then
begin
periodHigh = -99999999;
periodLow = 99999999;
barCountToday = 1;
end;

if barCountToday <= numOfBarsHHLL Then
Begin
periodHigh = maxList(periodHigh,h);
periodLow = minList(periodLow,l);
end;

if barCountToday < numOfBarsHHLL Then
begin
noPlot(1);
noPlot(2);
noPlot(3);
noPlot(4);
End
Else
begin
plot1(periodHigh,»top»);
plot2((periodHigh+periodLow)/2,»mid»);
plot3(periodLow,»bot»);
plot4(periodLow – (periodHigh – periodLow),»2bot»);
end;

barCountToday = barCountToday + 1;

Entonces, así es como lo haces. Puede usar este código como base para cualquier sistema que quiera probar y volver a ingresar a un mejor precio. También puede usar este código para desarrollar su propia estrategia de ruptura basada en el tiempo. En mi nuevo libro, Easing Into EasyLanguage – the Daytrade Edition, discutiré temas muy similares a los de esta publicación.

 

Artículo escrito por George Pruitt

Canal de YouTube de Quantified Models

En nuestro canal de YouTube tenemos varios videos disponibles que pueden resultarle muy útiles para desarrollar sistemas de trading.

Esperamos que esta información te haya sido de utilidad. 

 

Easylanguage | Sistema de trading: Tortugas

Easylanguage | Sistema de trading: Tortugas

He visto una plétora de publicaciones sobre las estrategias de comercio de tortugas donde se proporcionan las reglas y el código. Los códigos van desde una mera ruptura de Donchian hasta una representación bastante cercana. Sin retroalimentación de...

leer más

Subscribe to our Newsletter

Join our mailing list to receive the latest news and updates from Quantified Models team.

Subscribe to our Newsletter

You have Successfully Subscribed!

Ir al contenido