Jump to content

Мой первый "грааль" - путь граальщика


Recommended Posts

Sardd

Вот вроде бы вставил посмотрите правильно или как

 

extern int TakeProfit = 2000;

extern int StopLoss = 2000;

extern int TrailingStop = 0;

extern int Bezubitok = 0;

extern double Lots = 0.1;

extern int MagicNumber=1;)

extern int CountBars = 300;

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

//| |

int deinit()

{

int LossTrades, ProfitTrades, SummaryTrades;

int trades_total=HistoryTotal();

double Total;

LossTrades=0;

ProfitTrades=0;

SummaryTrades=0;

Total=0;

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

{

if(!OrderSelect(i,SELECT_BY_POS,MODE_HISTORY)) continue;

//---- calculate profit

double profit=OrderProfit()+OrderCommission()+OrderSwap();

Total=Total+profit;

if(profit<0)

{

LossTrades++;

}

else

{

ProfitTrades++;

}

SummaryTrades++;

}

if(Total>0)

{

int handle=FileOpen("report.txt",FILE_READ|FILE_WRITE,' ');

if(handle<1) return;

FileSeek(handle,FileSize(handle),SEEK_SET);

FileWrite(handle,"TrailingStop -",TrailingStop," Bezubitok -",Bezubitok," Profit -",Total," Sdelok -",SummaryTrades," Profit(%) -",100.0*ProfitTrades/SummaryTrades);

// if(ProfitTrades>0)

// FileWrite(handle,"Profit (%) -",ProfitTrades,StringConcatenate("(",100.0*ProfitTrades/SummaryTrades,"%)"));

// if(LossTrades>0)

// FileWrite(handle,"Loss (%) -",LossTrades,StringConcatenate("(",100.0*LossTrades/SummaryTrades,"%)"));

FileClose(handle);

}

return(0);

}

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

int start()

{

int cnt, i, ticket, total;

double GBRJPY4N4HSBCur, GBRJPY4N4HSBPre;

static datetime prevtime=0;

static int OrderBar = 0;

// вычисляем значения индюка в момент открытия нового бара

if(prevtime==Time[0])

{

}

else

{

GBRJPY4N4HSBCur=iCustom(NULL,0,"GBRJPY4N4HSB",CountBars,0,1);

GBRJPY4N4HSBPre=iCustom(NULL,0,"GBRJPY4N4HSB",CountBars,0,2);

// Print("GBRJPY4N4HSBCur - ", GBRJPY4N4HSBCur,"\n");

// Print("GBRJPY4N4HSBPre - ", GBRJPY4N4HSBPre,"\n");

prevtime = Time[0];

}

// проверка на закрытие позиций

total=OrdersTotal();

for(cnt=0;cnt<total;cnt++)

{

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

if(OrderType()<=OP_SELL && // check for opened position

OrderSymbol()==Symbol()) // check for symbol

{

if(OrderType()==OP_BUY) // long position is opened

{

// should it be closed?

if(GBRJPY4N4HSBCur<GBRJPY4N4HSBPre)

{

OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet); // close position

}

// безубыток

if((Bid-OrderOpenPrice())>(Point*Bezubitok) && OrderOpenPrice()>OrderStopLoss() &&

Bezubitok>0)

{

if(OrderStopLoss()<(Bid-Point*Bezubitok))

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()+3*Point,OrderTakeProfit(),0,Green);

}

}

// check for trailing stop

if(TrailingStop>0)

{

if(Bid-OrderOpenPrice()>Point*TrailingStop)

{

if((OrderStopLoss()<(Bid-Point*TrailingStop)) || (OrderStopLoss()==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green);

}

}

}

}

else // go to short position

{

// should it be closed?

if(GBRJPY4N4HSBCur>GBRJPY4N4HSBPre)

{

OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position

}

// безубыток

if((OrderOpenPrice()-Ask)>(Point*Bezubitok) && OrderOpenPrice()<OrderStopLoss() &&

Bezubitok>0)

{

if(OrderStopLoss()>(Ask+Point*Bezubitok))

{

OrderModify(OrderTicket(),OrderOpenPrice(),OrderOpenPrice()-3*Point,OrderTakeProfit(),0,Red);

}

}

// check for trailing stop

if(TrailingStop>0)

{

if((OrderOpenPrice()-Ask)>(Point*TrailingStop))

{

if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))

{

OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);

}

}

}

}

}

}

 

// проверка на открытие новых позиций

total=OrdersTotal();

if(total<1)

{

// если тотал меньше 1, то открытых поз нет

if(AccountFreeMargin()<(1000*Lots))

{

Print("We have no money. Free Margin = ", AccountFreeMargin());

return(0);

}

// проверка на БАЙ

if(GBRJPY4N4HSBCur>GBRJPY4N4HSBPre && OrderBar!=Bars)

{

ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"stoch",16384,MagicNumber,;)0,Green);

if(ticket>0)

{

if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))

{

OrderBar=Bars;

Print("Открыт БАЙ : ",OrderOpenPrice());

}

}

else Print("Ошибка открытия БАЙ : ",GetLastError());

}

 

}

}

Link to post
Share on other sites
  • Replies 238
  • Created
  • Last Reply

Top Posters In This Topic

  • Breakdown

    21

  • Квант

    17

  • AntFX

    13

  • New Guest

    7

Top Posters In This Topic

Popular Posts

Смотреть нужно в первую очередь на число сделок и равномерность роста графика, во вторую на профит-фактор. Если график растет равномерно при большом числе сделок, то ТС стоит внимания даже если ПФ дос

Очень познавательная статья Сергея Ковалева "Мой первый 'грааль'", где рассматриваются стандартные ошибки начинающих граальщиков.

Статья на Нобелевскую премию по Forex тянет.

Posted Images

Registr
Вот вроде бы вставил посмотрите правильно или как
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,"stoch",16384, MagicNumber,:wink:0,Green);

GBRJPY4N4HSBCur

 

У тебя неправильно две вещи: 16384 - лишнее и формула медного купороса пишется не так..


Миражи - это наша жизнь...

Link to post
Share on other sites
Sardd

А поподробнее

Link to post
Share on other sites
Registr
А поподробнее

 

А "поподробнее" пишется "по-подробнее".. :crazy:

 

З.ы. посчитай кол-во параметров функции OrderSend().. у тебя перебор..


Миражи - это наша жизнь...

Link to post
Share on other sites
pips9

Мне всегда было интересно "выступать" после Регистра, многие при этом озабочены советниками, экспертами и ещё всякой математикой, чтобы покрыть быка или медведя. Экспертами и советниками сыпят из всех щелей , в итоге, кто может честно сказать, вот мне интересно, что он срубил хоть 3 кило зелени?!

Link to post
Share on other sites
pips9

Упрощаю вопрос - 300 грамм зелени, тупо, так сказать, по советникам и экспертам за месяц срубившие - здесь есть?

Link to post
Share on other sites
Registr

Мне всегда было интересно "выступать" после Регистра, многие при этом озабочены советниками, экспертами и ещё всякой математикой, чтобы покрыть быка или медведя. Экспертами и советниками сыпят из всех щелей , в итоге, кто может честно сказать, вот мне интересно, что он срубил хоть 3 кило зелени?!

 

Ну так, голубых бегемотов на желтые горшки не сажаем..:crazy:


Миражи - это наша жизнь...

Link to post
Share on other sites
Квант

Вроде бы и тестер в МТ4, почти с каждым новым билдом, модернизируется (и улучшается), а все равно умельцы умудряются его обмануть...

post-16517-1404210931,3532_thumb.gif


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Ждущий

можт они не обновляют терминал

Link to post
Share on other sites
|Alpari|

Если тестер все улучшается, то неплохо бы в отчете номер билда где-нить в уголку приписывать.


С уважением, Дмитрий Орлов.

Link to post
Share on other sites
Квант
Если тестер все улучшается, то неплохо бы в отчете номер билда где-нить в уголку приписывать.

 

206 билд.


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Rosh
206 билд.
Ну так протестируйте на 207, в нем обрублена возмжность получать Close[0] на чужих инструментах. А то некоторые пытались использовать все шансы.
Link to post
Share on other sites
Квант
Ну так протестируйте на 207, в нем обрублена возмжность получать Close[0] на чужих инструментах. А то некоторые пытались использовать все шансы.

 

Ну наконец-то. Конечно попробую (я правда всегда обновляюсь только на четных билдах).


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Квант
Ну наконец-то. Конечно попробую (я правда всегда обновляюсь только на четных билдах).

 

Вот фигня-то, не могу обновиться до 207! 10 Mb спалил, а табличка LiveUpdate так и появляется по-новой. Сам файл terminal.exe не хочет обновляться.


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Registr
Вот фигня-то, не могу обновиться до 207! 10 Mb спалил, а табличка LiveUpdate так и появляется по-новой. Сам файл terminal.exe не хочет обновляться.

 

Есть такое дело у Альпари.. там видать ограничение стоит.. как только скорость скачивания падает ниже какого-то порога, LiteUpdate отваливается.. Просто скачиваешь с их сайта инсталлятор МТ4(там как правило новый билд) и обновляешь..


Миражи - это наша жизнь...

Link to post
Share on other sites
Квант
Есть такое дело у Альпари.. там видать ограничение стоит.. как только скорость скачивания падает ниже какого-то порога, LiteUpdate отваливается.. Просто скачиваешь с их сайта инсталлятор МТ4(там как правило новый билд) и обновляешь..

 

Да я так обычно и делаю, а вот хотел по-быстрому...


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Квант
Ну так протестируйте на 207, в нем обрублена возмжность получать Close[0] на чужих инструментах. А то некоторые пытались использовать все шансы.

 

Ну вот и все. Данный советник просто напросто не тестируется. Что и требовалось доказать. Давно бы так.


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Rosh
Ну вот и все. Данный советник просто напросто не тестируется. Что и требовалось доказать. Давно бы так.

 

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

Link to post
Share on other sites
Квант
Согласен. Просто не принималось во внимание, что будут искаться такие обходные пути для создания Граалей.

 

Я просто не пойму тех программистов, которые тратят свои силы на "написание" такой лабуды. Тем более, все остальное, видно, что написано очень грамотно и толково.


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
natlam
Я просто не пойму тех программистов, которые тратят свои силы на "написание" такой лабуды. Тем более, все остальное, видно, что написано очень грамотно и толково.

http://forum.mql4.com/ru/7558 - врядли метаквотс обяснят это.


BMW - это вся моя жизнь.

Link to post
Share on other sites
natlam

Не ну то что брокер недаст ему совершить 100 сделок понятно, но вот верность моделирования внутри дневок явно под вопросом.


BMW - это вся моя жизнь.

Link to post
Share on other sites
Квант
http://forum.mql4.com/ru/7558 - врядли метаквотс обяснят это.

 

HIDDEN снова что-то придумал. Посмотрим дальше, но ясно, что дело опять в какой-то ошибке...


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
Rosh
http://forum.mql4.com/ru/7558 - врядли метаквотс обяснят это.

Ошибка появилась в 207 билде. Просто некоторые пользователи отслеживают форум. Источник известен, будет пофиксено.

Link to post
Share on other sites
natlam
Ошибка появилась в 207 билде. Просто некоторые пользователи отслеживают форум. Источник известен, будет пофиксено.

Нехорошо, улучшили качество моделирования в 207 билде и тут же занесли баг. Мы ж ждем от вас исправления текущих багов в тестере а не занесение новых багов.:)

 

П.С. Я могу участвовать в чемпионате или нет?


BMW - это вся моя жизнь.

Link to post
Share on other sites
Квант
Ошибка появилась в 207 билде. Просто некоторые пользователи отслеживают форум. Источник известен, будет пофиксено.

 

Да, есть ошибка.

post-16517-1404210942,5953_thumb.png


Оставь надежду, всяк сюда входящий!

Forex

Link to post
Share on other sites
  • Capman locked this topic
Guest
This topic is now closed to further replies.
  • Recently Browsing   0 members

    No registered users viewing this page.


×
×
  • Create New...