Помогите, please! - страница 2

 
VladislavVG писал(а) >>

Выкладывайте что получилось - поглядим. Тока тегами для оформления кода воспользуйтесь - иначе нечитабельно будет.

Извиняюсь, выходил... Хотя, наверное, сегодня уже никого нет и все переносится на завтра... Выкладывать всего эксперта или куски, которые имеют отношение к делу?

 
EGuest писал(а) >>

Извиняюсь, выходил... Хотя, наверное, сегодня уже никого нет и все переносится на завтра... Выкладывать всего эксперта или куски, которые имеют отношение к делу?

Просто прицепите файл, будет проще поправить.

 
Figar0 писал(а) >>

Просто прицепите файл, будет проще поправить.

В общем-то и цеплять ничего не надо... Я просто пытаюсь стандартного эксперта MACD Sample повесить на несколько графиков, но новый ордер не открывается, пока не закрыт старый. Я и подумал, что может быть как-то можно его переписать, но с наскока ничего не получается... видимо, придется учить язык полностью, если добрые люди не помогут...

 
EGuest писал(а) >>

В общем-то и цеплять ничего не надо... Я просто пытаюсь стандартного эксперта MACD Sample повесить на несколько графиков, но новый ордер не открывается, пока не закрыт старый. Я и подумал, что может быть как-то можно его переписать, но с наскока ничего не получается... видимо, придется учить язык полностью, если добрые люди не помогут...

Боюсь это никогда не кончится)

Два момента есть в этом эксперте которые не позволяют ему работать так как Вам бы хотелось:

   total=OrdersTotal(); // учет ордеров всех экспертов на всех ТФ
   if(total<1) 

т.е. надо конкретно считать, ордера Вашего конкретного эксперта. Например так

void OrdersRecount()
{
  int cnt;
  // !!! Внимание модифицируются глобальные переменные программы !!!
  BuyOrders=0; SellOrders=0; TotalOrders=0;   SellStopOrders=0; BuyStopOrders=0;   SellLimitOrders=0; BuyLimitOrders=0; // Переменные программы
  for (cnt = OrdersTotal()-1; cnt >= 0; cnt--) 
  {
    if (!OrderSelect(cnt, SELECT_BY_POS))continue; 
    if (!(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic))continue;
    TotalOrders++;
    if (OrderType() == OP_BUY) { BuyOrders++; continue;}
    if (OrderType() == OP_SELL){ SellOrders++; continue;}    
    if (OrderType() == OP_BUYSTOP) { BuyStopOrders++; continue;}
    if (OrderType() == OP_SELLSTOP){ SellStopOrders++; continue;}    
    if (OrderType() == OP_BUYLIMIT) { BuyLimitOrders++; continue;}
    if (OrderType() == OP_SELLLIMIT){ SellLimitOrders++; continue;}      
  }
}

Второй момент:

         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"macd sample",16384,0,Green);

Что вместо Magic здесь используется контанта 16384, которую по идеи лучше сделать уникальной для каждого ТФ и инструмента посредством переменной, которую можно автоматом проиницилизировать например так:

int MagicfromSymbol() // Генирит Magicnumber для каждого символа и ТФ
{  
   int MagicNumber=0;  
   for (int i=0; i<5; i++) 
   {  
      MagicNumber=MagicNumber*3+StringGetChar(Symbol(),i)+5;  
   }  
   MagicNumber=MagicNumber*3+Period();  
   return(MagicNumber);  
}
Заданные вами вопросы задаются здесь ежедневно, если Вы хотите что-то делать самостоятельно стоит научиться пользоваться поиском по форуму, учебником и справкой.
 
EGuest >>:

В общем-то и цеплять ничего не надо... Я просто пытаюсь стандартного эксперта MACD Sample повесить на несколько графиков, но новый ордер не открывается, пока не закрыт старый. Я и подумал, что может быть как-то можно его переписать, но с наскока ничего не получается... видимо,

придется учить язык полностью, если добрые люди не помогут...

Вы, собственно, собираетесь зарабатывать на рынке или так, поиграться пытаетесь ? 

В первом случае, ИМХО, невозможно зависеть от воли добрых людей.  
Во втором - негоже отрывать людей от их собственных дел ради Вашей собственной прихоти. Вполне достаточно погонять стандартных советников на тестере и пооптимизировать их. В крайнем случае, позавешивать разных советников на разных парах на демке. Советников полно и в примерах и в кодебейсе...

Если что-то будете пытаться сделать самостоятельно, то здесь Вам помогут и даже не за деньги, если же вопрос будет ставиться Вами так, что за Вас работу кому-то нужно будет делать - это тоже возможно - ищите расценки по форуму. 

Кстати, для трейдинга программировать совсем не обязательно - можно торговать и руками, а потом на толику заработанных средств заказать программерам свою стратегию – закодят с удовольствием.

Успехов.

ЗЫ Напомнило картинку в метро или вокзале – «люди добрые, помогите.... сами мы не местные»....

2 Figar0 – я почему код просил то: чтобы EGuest хоть что-то попытался сделать самостоятельно. Он даже не показал своих попыток модифицировать стандартный советник - так можно было бы глянуть чего он читал и что усвоил..... ИМХО, 95%, что даже не пытался....

Тем более что ничего сложного - с этого действительно все начинали и занимает это не так уж много времени.


 

Уважаемые Figar0 & VladislavVG! Вы, несомненно, правы в своих нравоучениях. Просто пока у меня нет времени учить язык

Причина обращения: