К разработчикам

 
К разработчикам
Что нужно сделать, чтоб советник последовательно с минимальным интервалом купил и продал одну и ту же валюту, т.е. открылся в две стороны?
 
замерить время и через 10 секунд открыть вторую позицию
Можно замерить время(и другие характеристики) в переменных и через 10 секунд открыть вторую позицию на последующих вызовах эксперта.
 
Как
Приведите пожалуйста пример.
 
Что не так?
vars : first(0),cnt(0),G(0);
Defines: b(10),s(10),Z(5);

If TotalTrades=0 then first=0;
If TotalTrades=2 then exit;

if first=0 then
{
G=CurTime;
SetOrder(OP_BUY,Lots,Ask,0,Ask-b*Point,Ask+TakeProfit*Point,Coral);

first=first+1;
};
if CurTime=G+10 and first=1 then
{
SetOrder(OP_SELL,Lots,Bid,0,Bid+s*Point,Bid-TakeProfit*Point,Yellow);
G=0;
};
first=first-1;
 
более верно

vars : first(0),cnt(0),G(0);
Defines: b(15),s(15);

If TotalTrades=0 then first=0;
If TotalTrades=2 then exit;

if first=0 then
{
G=CurTime;
SetOrder(OP_BUY,Lots,Ask,0,Ask-b*Point,Ask+TakeProfit*Point,Coral);
first=first+1;
};
if CurTime=G+10 and first=1 then
{
SetOrder(OP_SELL,Lots,Bid,0,Bid+s*Point,Bid-TakeProfit*Point,Yellow);
G=0;
first=first-1;
};

 
В реале не так как в тесте
В тесте делает две сделки, а в реале только одну. Почему?
 
потому что надо добавить дополнительные условия. подумайте сами, какое.
 
Ух!
Так я понимаю, что малости не хватает, но уже третьи сутки мучаюсь, ну помогите, а?
 
Чуть-чуть осталось
Как добится, чтоб новые позиции открывались, когда все открытые закроются? У меня если одна из двух закрылась, открывается тут же еще одна, а надо когда две закроются, чтоб две новые открывались. Поможите?
 
Совет
Введи переменную-флаг, которая будет показывать, что у тебя закрыты обе позиции. Например, при закрытии второй позиции AllClosed=true;
Затем перед открытием поизции - проверка:
if AllClosed Then
SetOrder(...);
 
TotalTrades
Используйте предопределенную переменную TotalTrades.