Статус
Закрыто для дальнейших ответов.

alex-vv

Прохожий
Мог бы помочь, но не вижу смысла.
Один буфер там тренд.
Если последняя стрелка была 1 то стр вверх и наоброт.
Просто сравниваешь этот буфер на прошлом баре и на позапрошлом.
Не выдумывай лишнего.
Уважаемый eevviill, Вы не вникли в суть проблемы.
Всё было бы просто, если б был четкий сигнал установки стрелки, тогда и вопрос не возник бы..
А он , как я писал "Несколько раз меняет значение непосредственно перед установкой стрелки и после".
 

eevviill

Заблокирован
здравствуйте, уберите пожалуйста привязку к индикатору, и нужно поправить что бы можно было менять лот, по умолчанию 0.01
находишь строку
PHP:
double Lots = MarketInfo(Symbol(), MODE_MINLOT) * MathPow(LotExponent, CountTrades());
меняешь на
PHP:
double Lots = lot;
 

eevviill

Заблокирован
sega79!
Помогите с совом. Это классика из 2х МА. Просьба, добавить к нему время начала и конца работы, чтобы можно было оптить часы и минуты. После времени - конец работы, он не должен открывать новые ордера, но продолжать следить за открытыми.
PHP:
extern string V_R = "Время работы";
extern bool use_work_time = false;
extern int Start = 0;
extern int Stop = 24;
Это вставляешь с самого начала.

PHP:
//фильтр время
 if(use_work_time)
 {
  if(Start>Stop)
 {
 if(Hour()>=Stop && Hour()<Start) return;
 }
 
 if(Start<Stop)
 {
 if(Hour()<Start || Hour()>=Stop) return;
 }
 }

это перед строчкой
PHP:
// открываем новые ордера
 

eevviill

Заблокирован
Уважаемый eevviill, Вы не вникли в суть проблемы.
Всё было бы просто, если б был четкий сигнал установки стрелки, тогда и вопрос не возник бы..
А он , как я писал "Несколько раз меняет значение непосредственно перед установкой стрелки и после".
Ну значит я не понимаю и не могу помочь.
 

yolis

Местный житель
находишь строку
PHP:
double Lots = MarketInfo(Symbol(), MODE_MINLOT) * MathPow(LotExponent, CountTrades());
меняешь на
PHP:
double Lots = lot;

спасибо, лот теперь можно менять а вот мартин перестал работать
может еще что то нужно поменять посмотри пожалуйста если не затруднит
 

eevviill

Заблокирован
спасибо, лот теперь можно менять а вот мартин перестал работать
может еще что то нужно поменять посмотри пожалуйста если не затруднит
меняешь на
PHP код:
double Lots = lot;
не так
а так
double Lots = lot* MathPow(LotExponent, CountTrades());
 

yolis

Местный житель
меняешь на
PHP код:
double Lots = lot;
не так
а так
double Lots = lot* MathPow(LotExponent, CountTrades());

ругается при компилировании 'lot' - variable not defined C:\Program Files\MetaTrader - E-Global Trade & Finance Group\experts\Martin Lock.mq4 (42, 18)

все большое спасибо нашел почему ругается нужно было исправить буковку double Lots = Lot* MathPow(LotExponent, CountTrades());
 
Последнее редактирование:

Sergey555

Местный знаток
Ребята! Подскажите кто знает!
У меня такой вопрос, можно ли в мт4 копировать свои сделки на другой счет, к примеру два терминала с разными счетами (оба счета одного ДЦ) на одном счете и терминале открываешь сделку по валютной паре и чтобы на другом счете (другой терминал) открывалась точно токая же сделка по той же валютной паре и как это сделать? Заранее благодарю за ответ!!!
 

sega79

Местный знаток
Ребята! Подскажите кто знает!
У меня такой вопрос, можно ли в мт4 копировать свои сделки на другой счет, к примеру два терминала с разными счетами (оба счета одного ДЦ) на одном счете и терминале открываешь сделку по валютной паре и чтобы на другом счете (другой терминал) открывалась точно токая же сделка по той же валютной паре и как это сделать? Заранее благодарю за ответ!!!

Сейчас вроде у всех брокеров есть мульти терминалы, посмотри-почитай.
 

avatarua

Активный участник
Переделайте советник не Прибыль в валюте депозита а Прибыль в пунктах. Заранее спасибо.
 

Вложения

  • модификатор_1.rar
    2,4 КБ · Просмотры: 57

eevviill

Заблокирован
Переделайте советник не Прибыль в валюте депозита а Прибыль в пунктах. Заранее спасибо.
Ищешь
PHP:
if (OrderSymbol()==Символ && OrderType()==0){ОрдеровБай++;ТикетБай=OrderTicket();ПрибыльБай=ПрибыльБай+OrderProfit();}
    if (OrderSymbol()==Символ && OrderType()==1){ОрдеровСелл++;ТикетСелл=OrderTicket();ПрибыльСелл=ПрибыльСелл+OrderProfit();}
меняешь на
PHP:
if (OrderSymbol()==Символ && OrderType()==0){ОрдеровБай++;ТикетБай=OrderTicket();ПрибыльБай=ПрибыльБай+(Bid-OrderOpenPrice())/Point;}
    if (OrderSymbol()==Символ && OrderType()==1){ОрдеровСелл++;ТикетСелл=OrderTicket();ПрибыльСелл=ПрибыльСелл+(OrderOpenPrice()-Ask)/Point;}
 

digaysasha

Активный участник
Добрый день из этих советников кто то сможет сделать сетку, чтобы сетка также подтягивалась
 

Вложения

  • MY_BUYSTOP_отложка.mq4
    2,3 КБ · Просмотры: 29
  • MY_SELLSTOP_отложка.mq4
    2,3 КБ · Просмотры: 28

clon_tron

Местный знаток
Ребята, сделайте так что бы, ставил take profit 5 pips и если можно вывести на внешние чтоб мог поменять.
А то на демо открывает сделки, а TP не ставить
 

Вложения

  • ea.mq4
    3,4 КБ · Просмотры: 46

eevviill

Заблокирован
Ребята, сделайте так что бы, ставил take profit 5 pips и если можно вывести на внешние чтоб мог поменять.
А то на демо открывает сделки, а TP не ставить
С самого начала пишешь
extern int TP = 7;

Ищешь сторку
PHP:
if (a_ticket_0 == 0) a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, 0);
Меняешь на
PHP:
if (a_ticket_0 == 0) a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, Ask+TP*Point);

ищешь
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_SELL, Lots, Bid, 0, 0, 0);
на
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_SELL, Lots, Bid, 0, 0, Bid-TP*Point);

ищешь
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, 0);
на
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, Ask+TP*Point);

Не для ЕСН.
 

eevviill

Заблокирован
С самого начала пишешь
extern int TP = 7;

Вечер добрый, а для ЕСН как добавить ТП?
трал есть.
Для всего.
С самого начала.
PHP:
extern int StopLoss = 24;
extern int TakeProfit = 21;
extern int magic = 0; //номер присваиваемый для ордера

после Старта
PHP:
//SL && TP 
 if(StopLoss!=0 || TakeProfit!=0)
 {
 SL_TP(); 
 }

В самом конце.
PHP:
///////////////////////////////////////////////////////////////////////////
void SL_TP()
{
for (int i=OrdersTotal()-1; i>=0; i--)
 {
   if(OrderSelect(i,SELECT_BY_POS))
   {
   if(OrderMagicNumber()==magic)
   {
   if(OrderSymbol()==Symbol())
   {    
   
   /////////////////////////////////////////////////
   if(OrderType()==OP_BUY || OrderType()==OP_BUYSTOP || OrderType()==OP_BUYLIMIT)
   {     
   //OrderSelect(i,SELECT_BY_POS);
   if(StopLoss>0 && OrderStopLoss()==0 && NormalizeDouble(OrderOpenPrice()-StopLoss*Point,Digits)<Bid-MarketInfo(Symbol(),MODE_STOPLEVEL))
   {    
   OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(OrderOpenPrice()-StopLoss*Point,Digits),OrderTakeProfit(),0,CLR_NONE); 
   }
   OrderSelect(i,SELECT_BY_POS);
   if(TakeProfit>0 && OrderTakeProfit()==0 && NormalizeDouble(OrderOpenPrice()+TakeProfit*Point,Digits)>Bid+MarketInfo(Symbol(),MODE_STOPLEVEL)) 
   {
   OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),NormalizeDouble(OrderOpenPrice()+TakeProfit*Point,Digits),0,CLR_NONE);
   }
   }
   
   /////////////////////////
   if(OrderType()==OP_SELL || OrderType()==OP_SELLSTOP || OrderType()==OP_SELLLIMIT)
   {   
   //OrderSelect(i,SELECT_BY_POS);
   if(StopLoss>0 && OrderStopLoss()==0 && NormalizeDouble(OrderOpenPrice()+StopLoss*Point,Digits)>Ask+MarketInfo(Symbol(),MODE_STOPLEVEL)) 
   {
   OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(OrderOpenPrice()+StopLoss*Point,Digits),OrderTakeProfit(),0,CLR_NONE);   
   } 
   OrderSelect(i,SELECT_BY_POS);
   if(TakeProfit>0 && OrderTakeProfit()==0 && NormalizeDouble(OrderOpenPrice()-TakeProfit*Point,Digits)<Ask-MarketInfo(Symbol(),MODE_STOPLEVEL)) 
   {
   OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),NormalizeDouble(OrderOpenPrice()-TakeProfit*Point,Digits),0,CLR_NONE);   
   } 
   }
   
   //////////////////////////////////////////////// 
   } 
   }
   }
 }
 
 
}
 
Последнее редактирование:

clon_tron

Местный знаток
С самого начала пишешь
extern int TP = 7;

Ищешь сторку
PHP:
if (a_ticket_0 == 0) a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, 0);
Меняешь на
PHP:
if (a_ticket_0 == 0) a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, Ask+TP*Point);
ищешь
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_SELL, Lots, Bid, 0, 0, 0);
на
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_SELL, Lots, Bid, 0, 0, Bid-TP*Point);
ищешь
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, 0);
на
PHP:
a_ticket_0 = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, 0, Ask+TP*Point);
Не для ЕСН.




eevviill
спасибо огромное за помощь.

И снова нужна твоя помощь. Этот эксперт открывает сразу несколько ордеров. Можно ли сделать так что бы открывал по одному.

Например: открыл ордер, при достижении TP закрыл. И далее другой ордер и т.д.
 

3000000

Интересующийся
ПОМОГИТЕ ПОЖАЛУСТА

к каждому колену прикрытить свой експонет как например в этой сове Ilan 1.5 STD_3_LE_Ver_3
 

Вложения

  • Ilan1.6_PipStep_off_Series H4 мм!!!изначальный.mq4
    21,3 КБ · Просмотры: 23
Статус
Закрыто для дальнейших ответов.
Верх