[Archivo!] Escribir un asesor de forma gratuita - página 33

 
доброго времени! помогите! на МТ4 в тестере эксперт на паре GBPCHF на периодах М1,М15,М30 показывает результаты.
а на демо счете вооще ни как себя не проявляет во вложенгии посмотрите. зарание благодарен с уважением Егор! lenok_lenin@inbox.ru
Archivos adjuntos:
ugvymodb.txt  4 kb
 
alfasolo писал(а) >>
cómo puedo contactar con ustedes

No escribo por encargo
 
Todos muestran pérdidas ya que no los he ajustado en el probador! Si hay un EA normal, envíame un correo electrónico.
 
egor78 >>:
народ помогите не могу найти ни одного нормального советника перепробовал очень много! все показывают убыток как я не подгонял их тестере! если есть нормальный скинте эл я написал. зарание благодарен
¿Por qué necesitas un asesor adecuado y todo este dolor de cabeza? Sería mejor que pidieras una imprenta.
 

Ayuda para poner en marcha el EA. Reducido al mínimo. Se cicla de forma incorrecta y da el error 130.

extern int periodo_EMA = 233,

period_SMA = 233,

stoploss = 200,

Magia = 55;

extern double Lote = 0,01;

extern string TimeEnd = "22:00"; //hora límite para Hai o Low

extern string TimeSetOrders = "00:30"; // Hora de colocación del pedido.

extern string TimeDelOrders = "13:00"; // Hora de borrar los pedidos

extern int LevelWLoss = 1; // Nivel de equilibrio

extern inttern LevelProfit = 40; // Nivel de beneficio

extern bool AllSymbols = True; // Observar las posiciones de todos los símbolos

extern int Ticket = -1; // Identificador de posición (¡¡corregido!!)

extern bool TSProfitOnly = True; // Sólo beneficio de arrastre

extern intStop.Buy = 1000; // Tamaño del arrastre en puntos para la compra

extern int TStop.Sell = 1000; // Tamaño del arrastre en puntos para la venta

extern int TrailingStep = 100; // Paso final en puntos


int HiTime,LoTime;

int time; // en la siguiente barra ruedan los valores

int currDay,i=0;

void start() {

if (TimeToStr(CurTime(), TIME_MINUTES)==TimeSetOrders) SetLimOrd(); // Time =00.30, then place orders

if (TimeToStr(CurTime(), TIME_MINUTES)==TimeDelOrders) DelLim(); // Time ==13.00, borrar las órdenes pendientes

retorno (0);

}

//+------------------------------------------------------------------+

//| La eliminación de los limitadores no se activa |

//+------------------------------------------------------------------+

void DelLim()

{

for (int i=0;i<OrdersTotal();i++)

{

if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()==2||3)

OrderDelete(OrderTicket());

}

retorno (0);

}

//+------------------------------------------------------------------+

//| Fijación de órdenes pendientes |

//+------------------------------------------------------------------+

void SetLimOrd() {

//------- Precios diarios, Fibs y Hi-Low draw time--------------+

int shift = iBarShift(NULL,1440,Time[0]) + 1;

double HiPrice = iHigh(NULL,1440,shift); //Precio alto

double LoPrice = iLow(NULL,1440,shift); // precio bajo

double OpPrice = iOpen (NULL,1440,shift); //precio de apertura

double ClPrice = iClose (NULL,1440,shift); // Precio de cierre

datetime StTime = iTime(NULL,1440,shift);

double Pivot =(HiPrice+LoPrice+ClPrice)/3;

doble Rango =Precio Alto-Precio Bajo;

double Fibo138 =1,382*Rango;

double Fibo162 =1,618*Rango;

doble Fibo262 =2,618*Rango;

double Fibo_138 =(LoPrice-1.382*Range)-Range;

double Fibo_162 =(LoPrice-1.618*Range)-Range;

double Fibo_262 =(LoPrice-1.218*Range)-Range;

// ??

if(TimeDayOfWeek(StTime)==0/*Sunday*/){ /Agrega el máximo y el mínimo del viernes

HiPrice = MathMax(HiPrice,iHigh(NULL,1440,shift+1));

LoPrice = MathMin(LoPrice,iLow(NULL,1440,shift+1));

OpPrice = iOpen(NULL,1440,shift+1);

ClPrice = iClose(NULL,1440,shift+1);

Pivote =(PrecioAlto+PrecioBajo+PrecioCl)/3;

Rango =Precio Alto-Precio Bajo;

Fibo138 =1,382*Rango;

Fibo162 =1,618*Rango;

Fibo262 =2,618*Rango;

Fibo_138 =(LoPrice-1.382*Range)-Range;

Fibo_162 =(LoPrice-1.618*Range)-Range;

Fibo_262 =(LoPrice-1.218*Range)-Range;

}

//---------------- tiempo hai y baja-----------------------------------------+

if (time!=Time[0]){HiTime=0;LoTime=0;time=Time[0];}

if (High[0]>HiPrice)HiTime=TimeCurrent();

if (Low[0]<LoPrice)LoTime=TimeCurrent();

Comment("En esta barra: "+"\Npunto alto de tiempo="+HiTime+"\Npunto bajo de tiempo="+LoTime);

//-----------------Ценовой диапазон Демарка-------------------------------+

if (currDay!=TimeDay(Time[i])){

if (ClPrice<OpPrice) double x=(HiPrice + LoPrice + ClPrice + LoPrice)/2;

si (ClPrice>OpPrice) x=(HiPrice + LoPrice + ClPrice + HiPrice)/2;

si (ClPrice==OpPrice) x=(HiPrice + LoPrice + ClPrice + ClPrice)/2;

i++;

}

double MaxDay = x - LoPrice;

double MinDay = x - HiPrice;

//----------Скользящие средние---------------------------------------------+

double EMA = iMA(15,0,period_EMA,0,MODE_EMA, PRICE_CLOSE,0)

double SMA = iMA(15,0,period_SMA,0,MODE_SMA,PRICE_CLOSE,0);

double EMA1 = iMA(60,0,period_EMA,0,MODE_EMA,PRICE_CLOSE,0);

double SMA1 = iMA(60,0,period_SMA,0,MODE_SMA,PRICE_CLOSE,0);

//----------Ордера---------------------------------------------------------+

PrecioAlto=NormalizarDoble(PrecioAlto,Dígitos);

LoPrice=NormalizeDouble(LoPrice,Digits);

Pivot=NormalizarDoble(Pivot,Dígitos);

Fibo138=NormalizarDoble(Fibo138,Dígitos);

Fibo162=NormalizarDoble(Fibo162,Dígitos);

Fibo_138=NormalizarDoble(Fibo_138,Dígitos);

Fibo_162=NormalizarDoble(Fibo_162,Dígitos);

double poi=MarketInfo(OrderSymbol(),MODE_POINT);

si (HiTime>LoTime){

int ticket1 =OrderSend(Symbol(),OP_SELLLIMIT,Lot,HiPrice,0,HiPrice+stoploss*poi,Pivot,NULL,Magic,0,Red);

int ticket2 =OrderSend(Symbol(),OP_SELLLIMIT,Lot,Fibo138,0,Fibo138+stoploss*poi,HiPrice,NULL,Magic,0,Red);

int ticket3 =OrderSend(Symbol(),OP_SELLLIMIT,Lot,Fibo162,0,Fibo162+stoploss*poi,HiPrice,NULL,Magic,0,Red);

}

si (HiTime<LoTime){

int ticket4=OrderSend(Symbol(),OP_BUYLIMIT,Lot,LoPrice,0,LoPrice-stoploss*poi,Pivot,NULL,Magic,0,Red);

int ticket5=OrderSend(Symbol(),OP_BUYLIMIT,Lot,Fibo_138,0,Fibo_138-stoploss*poi,LoPrice,NULL,Magic,0,Red);

int ticket6=OrderSend(Symbol(),OP_BUYLIMIT,Lot,Fibo_162,0,Fibo_162-stoploss*poi,LoPrice,NULL,Magic,0,Red);

}

if (HiTime>LoTime && ClPrice>Pivot) {

int ticket7=OrderSend(Symbol(),OP_BUYLIMIT,Lot,Pivot,0,Pivot-stoploss*poi,HiPrice,NULL,Magic,0,Red);

}

if (HiTime<LoTime && ClPrice<Pivot) {

int ticket8=OrderSend(Symbol(),OP_SELLLIMIT,Lot,Pivot,0,Pivot+stoploss*poi,LoPrice,NULL,Magic,0,Red);

}

}

 

Hola.

Por favor, escriba un EA para comprar en la ruptura del alto de la vela anterior y vender en la ruptura del bajo de la vela anterior.

TP y SL es de 15 pips.

 

Cuando este EA se ejecuta en una cuenta real, el error 146 aparece muy a menudo.

¿Es posible hacer que el Asesor Experto haga varios intentos de abrir una orden, por ejemplo, con una pausa de medio minuto?


 

Buenas noches queridos programadores! ¿Podríais escribir un EA automático sin Stop Loss y Take Profit, que utilice una MA y líneas horizontales(que se pueden aplicar al propio gráfico) el algoritmo del asesor: Por ejemplo, ponemos en el gráfico 8 líneas horizontales-1.500;1.540;1.580;1.620;1.660, etc....Cuando la MA (5) cruza la línea1.500 hacia arriba desde abajo abre la Compra (para la primera o segunda barra); Luego la MA (5) rompe la línea inferior hacia arriba 1.540 cerrando la Compra anterior y reabriendo la Compra; Luego la MA (5) vuelve a dudar y rompe la línea1.540 hacia abajo, cerrando la Compra anterior y abriendo la Cáscara ; ; y así hasta el infinito ...Respetuosamente a usted ...

 
pavedoroga:

МА(5) cruza la línea1.500 desde abajo hacia arriba y abre la compra (en la primera o segunda barra); Luego МА(5) rompe la línea1.540 desde abajo hacia arriba, la compra anterior se cierra y reabre la compra; Luego МА(5) después de dudar regresa y rompe la línea1.540 desde arriba hacia abajo, la compra anterior se cierra y Shell abre .....


.... Г-О-О-О-О-О-О-О-О-Л-Л-Л-Л!!!!!!!!!!!
 
...y así hasta el infinito. El eterno alto... :)