[¡AVISO CERRADO!] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen. No puedo ir a ningún sitio sin ti. - página 112

 
Roger >> :
Dice "Advertencia" en ruso, nada más. ¿Qué tipo de problema es ese? Pregúnteles personalmente sobre los datos de su empresa de corretaje.
Si usted tiene MTS sensible a los cambios en diferentes corredores, eso es realmente un problema.

>> Lo siento, pero sólo estoy preguntando si es posible descargar el historial de cotizaciones no desde el servidor de Meta Quotes, sino desde el servidor de un broker independiente. Te pediré que te guardes tus suposiciones (sin ánimo de ofender), porque MTS no es mío y voy a comprobar si es sensible a los cambios de las empresas de corretaje.

 
Atis >> :
¿Cómo puedo captar la aparición de una nueva barra en un EA?

Así:

static int LastBars;

IBARS = iBars(Symbol(), Period());

if (LastBars != IBARS)
{

LastBars = IBARS;

.......

......

.......

}

 
ssd >> :

Así:

static int LastBars;

IBARS = iBars(Symbol(), Period());

if (LastBars != IBARS)
{

LastBars = IBARS;

.......

......

.......

}

Sí, así que no hay ningún evento sobre la aparición de una nueva vela ok, muchas gracias.

 

Ya está, es hora de aprender a programar, ahora voy a hacer un montón de preguntas frikis: )

aquí vamos... uno.

¿Qué diablos es esto? Un simple Asesor Experto, ¿qué he hecho mal? *'\NFin_del_programa* Estoy harto de este error, y no sólo en este script.


extern int Lots = 0.1;
extern int stoploss = 50;
extern int takeprofit = 50;
extern int iWPRperiod1 = 50;
extern int iWPRperiod2 = 60;
extern int magic = 555;

int start()
{

int stoploss, takeprofit, iWPRperiod1,iWPRperiod2, magic, lots;


if (iWPR(NULL,0,iWPRperiod1,0)>iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,lots,stoploss,takeprofit,0,magic,0,Red);
}
if (iWPR(NULL,0,iWPRperiod1,0)<iWPR(NULL,0,iWPRperiod2,0))
{
OrderSend(NULL, OP_BUY,1,Ask,Lots,stoploss,takeprofit,0,magic,0,Red);
}
return(0);
}


 

En primer lugar, comprueba los soportes: todos son soportes de apertura. {...{ en lugar de {...} El primer error le indica que los paréntesis no están colocados correctamente en el programa.

Entonces recibirá un mensaje de que le faltan puntos y comas al final de una línea, e incluso obtendrá un número de línea.

Y habrá mucho más de este tipo de bondades porque informar de los errores es una buena acción, no ....... Traduce los mensajes de error, casi todo está claro.

 

Hola a todos. He aquí una pregunta:

¿Qué versión del código es menos exigente con los recursos del sistema (y el tiempo)?

He escrito un EA y parece bastante complicado, imho. Se necesita mucho tiempo para probarlo.

Estoy pensando, tal vez acortar los cálculos de alguna manera.

En este caso, ¿es más fácil ejecutar OrderType() o extraer el elemento del array mass[i,1]?

...

OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING(OrderType()); //вычисляет стоп-лосс
...

//или

...

OrderSelect(mass[i,0],SELECT_BY_TICKET); //выбрать ордер
sl=TRALING_BARS(mass[i,1]); //вычисляет стоп-лосс
...

Igual que OrderStopLoss, etc.

O por ejemplo:

...

//пересекла ли главная линия стохастика сигнальную линию сверху вниз

if(

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)>

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)<

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))

...

//и ниже

...

//пересекла ли главная линия стохастика сигнальную линию cнизу вверх
if(

iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF)<
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF)&&
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0)>
iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0))

...

¿tiene sentido crear variables y asignarles valores de función y luego utilizarlas, o no?

será del tipo

...

double a=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,shiftF);

double b=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,shiftF);

double c=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,0,0);

double d=iStochastic(Symbol(),0,KperiodF,DperiodF,SlowlingF,methodF,PriceFieldF,1,0);

...

//пересекла ли главная линия стохастика сигнальную линию сверху вниз

if( a>b && c<d )

...

//пересекла ли главная линия стохастика сигнальную линию cнизу вверх

if( a<b && c>d )

...

¿O puedo crear una variable, calcular la estocasticidad una vez y luego leer el valor de la variable?

Por favor, avisen, programadores. Gracias

 

No, no voy a arreglar tus códigos de forma permanente. Tienes la tecnología para encontrarlo.

Lo único que debo señalar es que no me gusta la notación que utiliza. Con esta disposición de paréntesis, en mi opinión, el error es más difícil de encontrar. Mira cómo escribe KimIV.

 
mukata писал(а) >>

Hola a todos. He aquí una pregunta:

¿Qué versión del código es menos exigente con los recursos del sistema (y el tiempo)?

He escrito un EA y parece bastante complicado, imho. Se necesita mucho tiempo para probarlo.

Creo que puedo reducir de alguna manera los cálculos.

En este caso, ¿es más fácil ejecutar OrderType() o extraer el elemento del array mass[i,1]?

¿Es más caro contar cada vez una parada, o crear una variable, contar una vez una parada y luego leer el valor de la variable?

Por favor, avisen, programadores. Gracias

¿Hay que trabajar en 0 bar?

Intentas acortar tanto las cosas que no puedo evitar pensar que no se trata de eso...

 
FOREXMASTER писал(а) >>
¿Dónde has escondido tu código? Sólo iba a retocarlo, y ya está...
 
StatBars >> :

¿Hay que trabajar a 0 bar?

Es que ya estás tratando de acortar tanto las cosas que no puedes evitar pensar que no se trata de ellas...

No, no soy un pipser, si eso es lo que quieres decir...

y por qué no iba a funcionar...

Es que la máquina ya está cargada al límite, la CPU está hirviendo... Y cuando empieces a ejecutarlo, empezará a contar...

No quiero reescribirlo para nada - hay muchas cosas así en los programas...

¿Y qué hay de la pregunta?