[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 389

[Deleted]  
Здравствуйте. Функция iMaOnArray использует заранее подготовленный массив данных, который в этой функции записывается без квадратных скобок. Как быть, если этот массив двумерный? (например так: Mas[4][100], т.е. 4 независимых машки по 100 точек каждая)
[Deleted]  

Господа программисты как сделать так чтоб высвечивались только точки мах и мin свечей одного цвета?

Декомпил удален

 

Подскажите правильно ли считается профит фактор если Hist-массив содержащий историю счета после каждой закрытой сделки.

double IndFunc2()
{
int i;
double sl,tp;
double r;
for(i=PeriodPF-1;i>0;i--){
r=Hist2[i]-Hist2[i-1];
if(r>=0){tp+=r;}
if(r<0){sl+=MathAbs(r);}
}
if(sl!=0){PF2=tp/sl;}
else{PF2=tp;}
return(0);
}
[Deleted]  
// < 0 - Dn
// > 0 - Up
int Signal()
{
double RSI = iRSI(NULL,15,RSIperiod,RSI_price,SignalBar);
double Stoch = iStochastic(NULL,15,Stoch_K,Stoch_D,Stoch_slowing,Stoch_method,Stoch_price,Stoch_mode,SignalBar);
double CCI = iCCI(NULL,15,CCI_period,CCI_price,SignalBar);

double MA2 = iMA(NULL,15,ma2_period,ma2_shift,ma2_method,ma2_price,SignalBar);
double IchiA = iIchimoku(NULL, 15, tenkan, kijun, senkou_span_b, 3, SignalBar);
double IchiB = iIchimoku(NULL, 15, tenkan, kijun, senkou_span_b, 4, SignalBar); 

    if(GO && SignalType_1 && RSI >= 65 && Stoch >= 80 && CCI >= 100) {GO=false; return(+1);}//запретить повторный вход (+1);
    if(GO && SignalType_2 && Bid >= MA2) {GO=false; return(+1);}//запретить повторный вход return(+1);
    if(GO && SignalType_3 && Bid >= IchiA) {GO=false; return(+1);}//запретить повторный вход (+1);
    
   
    
    if(GO && SignalType_1 && RSI <= 35 && Stoch <= 20 && CCI <= -100) {GO=false; return(-1);}//запретить повторный вход (-1);
    if(GO && SignalType_2 && Ask <= MA2) {GO=false; return(-1);}//запретить повторный вход (-1);
    if(GO && SignalType_3 && Ask <= IchiB) {GO=false; return(-1);}//запретить повторный вход (-1);
    
    if(OrdersTotal()==0)GO=true;
    
    return(0);
}

Здравствуйте Подскажите пожалуйста как разделить эти сигналы на три разных (т.е. в советнике используется три сигнала на покупку я хотел бы чтобы все три сигнала использовал советник по отдельности а не в общей куче) Я попробовал сам у меня получилось вот это

//+------------------------------------------------------------------+
//
// 1 - Dn
// 2 - Up
int Signal()
{
double RSI = iRSI(NULL,15,RSIperiod,RSI_price,SignalBar);
double Stoch = iStochastic(NULL,15,Stoch_K,Stoch_D,Stoch_slowing,Stoch_method,Stoch_price,Stoch_mode,SignalBar);
double CCI = iCCI(NULL,15,CCI_period,CCI_price,SignalBar);

if(GO && SignalType_1 && RSI >= 65 && Stoch >= 80 && CCI >= 100) {GO=false; return(+1);}//запретить повторный вход (+1);
else {
if(GO && SignalType_2 && RSI <= 35 && Stoch <= 20 && CCI <= -100) {GO=false; return(-1);}//запретить повторный вход (-1);
}
}

{
double MA2 = iMA(Symbol(), 0, 200, 0, MODE_EMA, PRICE_CLOSE, 1);


if(GO && SignalType_1 && Bid >= MA2) {GO=false; return(+1);}//запретить повторный вход (+1);

else
{
if(GO && SignalType_2 && Ask <= MA2)  {GO=false; return(-1);}//запретить повторный вход (-1);
}
}
{
double IchiA = iIchimoku(NULL, 15, tenkan, kijun, senkou_span_b, 3, SignalBar);
double IchiB = iIchimoku(NULL, 15, tenkan, kijun, senkou_span_b, 4, SignalBar); 

    
       if(GO && SignalType_1 && Bid >= IchiA ){GO=false; return(+1);}//запретить повторный вход (+1); 
  
  else{  
    
    if(GO && SignalType_2 && Ask <= IchiB ) {GO=false; return(-1);}//запретить повторный вход (-1); 
    }
    
    if(OrdersTotal()==0)GO=true;
    
    return(0);
}

И получилось что советник открывает сделки только по RSI CCI и Stoh. Что неправильно?

[Удален]  
FAQ:

Милости просим. ибо старый тормозит немерянно.

Cсылка на предыдущий топ : https://www.mql5.com/ru/forum/134688


Доброго времени суток, Уважаемые Форумчане!!!

совсем недавно мне трудно было представить как вообще писать советник. А теперь, задался целью написать своего первого советника, просто голову озарила светлая идея. Ближе к делу!

одна из функций моего светника - это рысканье по истории в поисках последнего закрытого ордера, но проблема - этот ордер должен быть обязательно BUy или Sell, но никак не удалённый отложенник. Я в тупике. Ихначально у меня стояла вот такая конструкция

OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY);

код простейший, вычисляет последний ордер, а если отложенник, то ступор(

Мне нужен код вида:

тра-ля-ля цикл(считывает с конца)

если попался отложенник, {то на 1 вверх},

если попался ордер типа BUY или SELL, то вуаля {какая-нибудь функция}

Надеюсь на вашу помощь, советник почти полностью написан, моё первое творение, остался только этот крупный косяк, а остальные маленькие - ерунда.

Заранее спасибо!!!
 
tyler.lexx:

Доброго времени суток, Уважаемые Форумчане!!!

совсем недавно мне трудно было представить как вообще писать советник. А теперь, задался целью написать своего первого советника, просто голову озарила светлая идея. Ближе к делу!

одна из функций моего светника - это рысканье по истории в поисках последнего закрытого ордера, но проблема - этот ордер должен быть обязательно BUy или Sell, но никак не удалённый отложенник. Я в тупике. Ихначально у меня стояла вот такая конструкция

OrderSelect(OrdersHistoryTotal()-1,SELECT_BY_POS,MODE_HISTORY);

код простейший, вычисляет последний ордер, а если отложенник, то ступор(

Мне нужен код вида:

тра-ля-ля цикл(считывает с конца)

если попался отложенник, {то на 1 вверх},

если попался ордер типа BUY или SELL, то вуаля {какая-нибудь функция}

Надеюсь на вашу помощь, советник почти полностью написан, моё первое творение, остался только этот крупный косяк, а остальные маленькие - ерунда.

Заранее спасибо!!!

Спамим? Повторится - в бан
[Удален]  
Vinin:

Спамим? Повторится - в бан
Раз такой умный, то лучше бы помог, нежели пугать концом света!я реально обратился за помощью!
 
есть список чисел, хотелось бы построить плотность распределения с помощью какой нибудь простой бесплатной программы, так как сам не математик, подскажите, где нарыть такую можно.
 
Импорт истории больше не работает что ли? Билд 434.
[Deleted]  

Доброго времени суток. Вопрос следующего содержания: почему среди идентификаторов запроса функции MarketInfo есть параметр MODE_MARGINREQUIRED для определения количества свободных средств, необходимых для открытия 1 лота на покупку, но нет параметра для определения количества свободных средств, необходимых для открытия 1 лота на продажу? И как в таком случае определить, сколько надо иметь свободных средств, чтобы открыть 1 лот на продажу в том или ином ДЦ?

P.S. Чтобы не захламлять форум, заранее благодарю за ответ.