[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 228
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Помогите пожалуйста дописать советнику стоп лосс что только не пробывал ну не получаеться:(.Спасибо
-----------------------------------------+
//| Order_v_Day.mq4 |
//| Copyright © 2010, forex-grail.ru |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2010, forex-grail.ru"
#property link "forex-grail.ru"
double Lots = 0.01; // лот
extern int H = 0 ; // час выставления ордера
extern int SL = 0; // стоплосс в пп.
extern int TP = 20; // тейкпрофит в пп.
int Slippage = 2; // проскальзывание
int Magic = 70111; // магик
int ticketsell, ticketbuy;
double bid, ask;
string com = "O&D";
int init()
{
return(0);
}
int deinit()
{
return(0);
}
bool isBullish(int shift, int tf = PERIOD_D1) { return(iClose(NULL, tf, shift) > iOpen(NULL, tf, shift)); }
bool isBearish(int shift, int tf = PERIOD_D1) { return(iClose(NULL, tf, shift) < iOpen(NULL, tf, shift)); }
int start()
{
int TotalNumber = 0;
for(int i=0; i<OrdersTotal(); i++)
{
if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false) break;
if (OrderMagicNumber() != Magic || OrderSymbol() != Symbol()) continue;
TotalNumber++;
}
if (TotalNumber == 0)
{
ticketsell = 0;
ticketbuy = 0;
}
if(Hour() == H && Minute() == 5 && TotalNumber == 0) // Время открытия ордеров
{
if (isBearish(1)) // Если предыдущая свеча на D1 "межвежья" то покупаем
{
RefreshRates();
double ask = NormalizeDouble(MarketInfo(Symbol(),MODE_ASK), Digits);
ticketbuy = OrderSend(Symbol(),OP_BUY,Lots,ask,Slippage,0,ask+TP*Point,com,Magic,0,Blue);
}
if (isBullish(1)) // Если предыдущая свеча на D1 "бычья" то продаем
{
RefreshRates();
double bid = NormalizeDouble(MarketInfo(Symbol(),MODE_BID), Digits);
ticketsell = OrderSend(Symbol(),OP_SELL,Lots,bid,Slippage,0,bid-TP*Point,com,Magic,0,Red);
}
}
return(0);
}
Выкладывайте архив. У себя посмотрю.
файл EURUSD5.csv размером 44.5 МБ ужал раром EURUSD5.rar до 7.7 МБ
http://files.mail.ru/E2FN87
файл EURUSD5.csv размером 44.5 МБ ужал раром EURUSD5.rar до 7.7 МБ
http://files.mail.ru/E2FN87
Вместо
ticketbuy = OrderSend(Symbol(),OP_BUY,Lots,ask,Slippage, 0, ask+TP*Point,com,Magic,0,Blue);
попробуйте
ticketbuy = OrderSend(Symbol(),OP_BUY,Lots,ask,Slippage,bid-SL* Point, ask+TP*Point,com,Magic,0,Blue);
=======================
А для ticketsell, аналогично
вместо нуля: ask+SL* Point
Вместо
ticketbuy = OrderSend(Symbol(),OP_BUY,Lots,ask,Slippage, 0, ask+TP*Point,com,Magic,0,Blue);
попробуйте
ticketbuy = OrderSend(Symbol(),OP_BUY,Lots,ask,Slippage,bid-SL* Point, ask+TP*Point,com,Magic,0,Blue);
=======================
А для ticketsell, аналогично
вместо нуля: ask+SL* Point
мета трейдел в журнале пишет:2011.10.02 13:34:37 2010.11.23 00:05 Order_v_Day_v_1.0 EURUSD,Daily: invalid stoploss for OrderSend function
В закачке
(предопределенные переменные Ask & Bid пишутся с заглавной буквы)
В закачке
Это же CSV!!! Его надо в HST преобразовать, чтобы виден на графике был. Воспользуйтесь импортом в архиве котировок.
импорт нефига не преобразует, а экспорт не экспортирует такой формат как HST