Página 1 de 1

referencia a un valor de hace 2 dias

Publicado: 02 Jun 2016 20:13
por Lmy
Hola,soy muy novato en Amibroker y todavia estoy asimilando conceptos.
Tengo un problema para programar lo siguiente:
Pongo un grafico en el que pongo el precio en velas, con una linea superior y otra inferior, formadas por el C+x*ATR(y),SIENDO:
C el precio
x=numero a elegir(normalmente 1 o 1,5)
y= parametro de ATR
Se podria hacer C+1.5*Atr(14) solo es para poder elegir parametros desde el menu.
Esto si lo tengo, el codigo es:
_SECTION_BEGIN("Price");

SetChartOptions(0,chartShowArrows|chartShowDates);
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) Vol " +WriteVal( V, 1.0 ) +" {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 )) ));

Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
_SECTION_END();

_SECTION_BEGIN("ATR");

x=Param("ATR",1.5,0.5,5,0.5);
y=Param("ATRlookback",14,5,250,1);
Plot(Close-N*ATR(M),"ATR-",ParamColor("ATR-",colorBlueGrey),styledots);
Plot(Close+N*ATR(M),"ATR+",ParamColor("ATR+",colorOrange),styleDots);

_SECTION_END();

El problema es que quiero hacer un sistema que compre cuando el precio sea mayor que el precio+1.5*atr de hace un par de dias, y no soy capaz he probado cosas como:

com=(C+x*ATR(y));
buy =( C>com[2]);
Sell = (C<com2[2]);
y muchas variaciones de algo asi, pero me dsa a mi que para hacer referencia al importe de hace 2 dias hay que hacerlo de otra manera, si me puedes hechar un cable, seguro que no es tan dificil.

Re: referencia a un valor de hace 2 dias

Publicado: 03 Jun 2016 03:10
por Guille
Hola Lmy,
Bueno yo no se programar en mql4 pero creo que la referencia al valor c+x*ATR de hace dos días lo haces bien pues asignas el valor a una variable llamada com y luego llamas el valor que hace dos días añadiendo [2]
Creo que el fallo lo puedes tener porque a la hora de poner las ordenes de buy y sell no lo haces haciendo que se ejecuten esas órdenes si se cumple la condición de que el precio es mayor que la valor de la variable "com" hace dos días.
Normalmente la condición se expresa mediante la palabra if y te quedaría algo así:
if C>com[2] entonces buy
Aquí tienes un enlace a un artículo de esta misma web donde se explica como va lo de las condiciones en mql4:

https://www.x-trader.net/articulos/soft ... ina-3.html

Espero te sirva
Un saludo

Re: referencia a un valor de hace 2 dias

Publicado: 03 Jun 2016 07:27
por Rango Starr
. :D

Re: referencia a un valor de hace 2 dias

Publicado: 03 Jun 2016 09:48
por X-Trader
Hola Lmy, bienvenido al Foro. ¿Has probado con la función Ref? Tienes su funcionamiento en este enlace:

https://www.amibroker.com/guide/afl/ref.html

Saludos,
X-Trader

PD: Guille, estamos en el Foro de Amibroker, no obstante gracias por intentar ayudar ;)

Re: referencia a un valor de hace 2 dias

Publicado: 15 Ene 2017 16:01
por Lmy
Bueno aunque ha pasado tiempo voy arespond er por si alguien le surge la misma duda
El precio de hace 2 periodos en amibroker

Ref(c,2);

Si en vez de precio quieres el valor de otra cosa de hace 2 periodos pir ejemplo macd pues en vez de C (macd,12,26) asi
Ref((macd,12,26),2);