[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 938

 
q1shock:


вот тебе пример от ребятушек =)


Спасибо за ответ. Набросал простейший советник. Все равно не работает.

extern int HourStartTrade = 14;
extern int MinuteStartTrade = 30;
extern int TakeProfit=690;
extern int StopLoss=250;
static int PrevTime=0;
extern int DeltaTimenow=1200;

int start()
{
if (Time[0]<=PrevTime) return(0);
{
PrevTime=Time[0];
int ticket;
if (Hour () == HourStartTrade && Minute() == MinuteStartTrade)
{
ticket=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,Ask-StopLoss*Point,Ask+TakeProfit*Point,"EMA BUY",0,0,CLR_NONE);
datetime expiration = 0;
expiration = {(TimeCurrent() + DeltaTimenow)};
Print("expiration = ",expiration);
ticket=OrderSend(Symbol(),OP_SELLSTOP,0.1,Ask-StopLoss*Point,3,Bid,Ask-StopLoss*Point-StopLoss*Point,"EMA SELL",expiration,0,CLR_NONE);
}
}
}
return(0);

 
artmedia70:

Корректировка digits под йену нужна если вы работаете с ней и символ ордера содержит в себе JPY. Не парьтесь - ф-ция это за вас всё сделает. А размещать её нужно, как и любые функции за пределами тела советника. А вызывать её из советника так:


за пределом функции int start, или за пределом любой функции в теле int start?
 
gheka:
за пределом функции int start, или за пределом любой функции в теле int start?
за пределом вообще любой функции.
 
Подскажите ктонибудь где взять файлы настроек в метатрейдере, после тестирования советника в тестере, и отчет о тестировании
 
71bags:
Подскажите ктонибудь где взять файлы настроек в метатрейдере, после тестирования советника в тестере, и отчет о тестировании

А сохранять не пробовали?
 
Vinin:

А сохранять не пробовали?
Мне нужен файл штобы отправить програмисту
 
71bags:
Мне нужен файл штобы отправить програмисту
Я сохранял изображение - это не то
 
71bags:
Я сохранял изображение - это не то
А сохранить как отчёт? или сохранить как детализированный отчёт? Ведь можно же и попробовать, а не сразу вопросы писать... А потом дожидаться ответа...
 
artmedia70:
А сохранить как отчёт? или сохранить как детализированный отчёт? Ведь можно же и попробовать, а не сразу вопросы писать... А потом дожидаться ответа...
Подскажи как
 
extern double SL=20; // SL для открываемого ордера
extern double TP=20; // ТР для открываемого ордера
extern double Lot=0.01; // Жестко заданное колич. лотов
datetime time;
//--------------------------------------------------------------- 2 --
int start()
{
int Total;

double
M_0,
M_1;


bool
Ans =false, // Ответ сервера после закрытия
Cls_B=false, // Критерий для закрытия Buy
Cls_S=false, // Критерий для закрытия Sell
Opn_B=false, // Критерий для открытия Buy
Opn_S=false; // Критерий для открытия Sell

//--------------------------------------------------------------- 3 --
// Учёт ордеров


for(int i=OrdersTotal()-1;i>=0;i--)
if (OrderSelect(i,SELECT_BY_POS)&&OrderSymbol()==Symbol()&&OrderType()>1)Total++;

if(Total!=0 || time==Time[1])return;


// Торговые критерии

M_0=iOsMA(NULL,0,13,34,8,0,0); // 0 бар
M_1=iOsMA(NULL,0,13,34,8,0,1); // 1 бар



if (M_1<0 && M_0>0)
Opn_B=true;

if (M_1>0 && M_0<0)
Opn_S=true;

//--------------------------------------------------------------- 7 --


if (Opn_B)
{OrderSend(Symbol(),OP_BUY,Lot,Ask,0,Bid-SL*Point,Bid+TP*Point);time=Time[1];}

if (Opn_S)
{OrderSend(Symbol(),OP_SELL,Lot,Bid,0,Ask+SL*Point,Ask-TP*Point);time=Time[1];}
}


Советник, открывающий позиции при пересечении OsMA нулевой линии. Непонятно где открывает и непонятно почему. Посмотрите кто-нибудь, может ошибка в iOsMA(NULL,0,13,34,8,0,0)?
Причина обращения: