Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 435

 

Могу ли я записать значения переменных в массив таким образом?

double A[13] = {R3,M5,R2,M4,R1,M3,P,M2,S1,M1,S2,M0,S3};
 
Всё сам допёр )))
 

Подскажите пожалуйста почему такое происходит.

Тестер.ТФ 5мин Все тики.


int start()  
 {
int pY =  Bars;
int pY1 = Bars+239;
       
Print( "Н Н Н  =  ", pY);   
Print( "НH HН НH  =  ", pY1); 

}

В переменные pY и pY1 программа должна записывать количество баров на КАЖДОМ тике.

То есть Print в журнале должна распечатывать порядковый номер КАЖДОЙ пятиминутки

Фактически же, судя по распечатки функции Print в журнале, интервал между соседними пятиминутками около месяца.

2014.01.19 13:28:08     2000.03.17 12:56  БАЗА 30-150 EURUSD,M5: НH HН НH  =  15738
2014.01.19 13:28:08     2000.03.17 12:56  БАЗА 30-150 EURUSD,M5: Н Н Н  =  15499
2014.01.19 13:28:08     2000.03.17 12:56  БАЗА 30-150 EURUSD,M5: НH HН НH  =  15738
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: Н Н Н  =  11856
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: НH HН НH  =  12095
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: Н Н Н  =  11856
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: НH HН НH  =  12095
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: Н Н Н  =  11856
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: НH HН НH  =  12095
2014.01.19 13:28:07     2000.02.29 18:38  БАЗА 30-150 EURUSD,M5: Н Н Н  =  11856
2014.01.19 13:28:07     2000.02.29 18:37  БАЗА 30-150 EURUSD,M5: НH HН НH  =  12095
2014.01.19 13:28:06     2000.02.10 22:20  БАЗА 30-150 EURUSD,M5: Н Н Н  =  8258
2014.01.19 13:28:06     2000.02.10 22:20  БАЗА 30-150 EURUSD,M5: НH HН НH  =  8497
2014.01.19 13:28:06     2000.02.10 22:20  БАЗА 30-150 EURUSD,M5: Н Н Н  =  8258
2014.01.19 13:28:06     2000.02.10 22:20  БАЗА 30-150 EURUSD,M5: НH HН НH  =  8497
2014.01.19 13:28:06     2000.02.10 22:20  БАЗА 30-150 EURUSD,M5: Н Н Н  =  8258
2014.01.19 13:28:06     2000.02.10 22:19  БАЗА 30-150 EURUSD,M5: НH HН НH  =  8496
2014.01.19 13:28:06     2000.02.10 22:19  БАЗА 30-150 EURUSD,M5: Н Н Н  =  8257
2014.01.19 13:28:06     2000.02.10 22:18  БАЗА 30-150 EURUSD,M5: НH HН НH  =  8496
2014.01.19 13:28:05     2000.01.10 15:42  БАЗА 30-150 EURUSD,M5: Н Н Н  =  1600
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: НH HН НH  =  1839
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: Н Н Н  =  1600
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: НH HН НH  =  1839
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: Н Н Н  =  1600
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: НH HН НH  =  1839
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: Н Н Н  =  1600
2014.01.19 13:28:05     2000.01.10 15:41  БАЗА 30-150 EURUSD,M5: НH HН НH  =  1839

ВОПРОС.Почему переменные pY и pY1 не получают значение порядкового номера КАЖДОЙ пятиминутки?

Спасибо.


 

мучаюь уже три четыри дня вечно какаето фигня подведет

задача такова нужно чтобы открывалась сделка когда цена открытия текущего бара к примеру находится выше цены установленой цены ... это мы принимаем за условия для входа......и не открывалась заново пока не сформируется аналогичное условие для входа....

if(OrderSelect(0,SELECT_BY_POS,MODE_TRADES)==false)..если колво сделок открытых равно нулю входить можна
 {

 active=true;
 }
 //открывать сделку или не открывать сделку
 
 if(active==true)...если входить можна проверяем условие для покупки
 {
 if((high3>high2)&&(close2<close1)&&(low2<low3)&&(open1<close2)&&(close1>close2)&&(low1<low2))
{
b=high2;
}
if(iOpen(NULL,0,0)>b)....если текущая цена выше то покупаем
{
 OrderSend(Symbol(),OP_BUY,0.1,Ask,7,Ask-30*Point,Ask+90*Point,0,0,0,Green);
 active=false;
}
и так проблема вся в том что у нас текущей ордер может закрыться уже когда сформируется заново условия и перезапишется цена тоесть он откроется фиг знает где и сразу по закрытию текуще позиции....как сделать так чтобы если ордер закрылся выше перезаписаной цены то мы ждали дальше пока не выполнится заново условие
 
solnce600:

Подскажите пожалуйста почему такое происходит.

Тестер.ТФ 5мин Все тики.

В переменные pY и pY1 программа должна записывать количество баров на КАЖДОМ тике.

То есть Print в журнале должна распечатывать порядковый номер КАЖДОЙ пятиминутки

Фактически же, судя по распечатки функции Print в журнале, интервал между соседними пятиминутками около месяца.

ВОПРОС.Почему переменные pY и pY1 не получают значение порядкового номера КАЖДОЙ пятиминутки?

Спасибо.


Сходу, Bars+239, зачем Вам номер бара, которого даже в истории нет?

И вообще "количество баров на каждом тике" Что это??????

Попробуйте объяснить проблему подробнее, а то смех один.....

Нет такого термина "порядковый номер пятиминутки".......

 
Может количество тиков на каждом баре? Согласитесь, это разные вещи....
 

Можно пожалуйста строчку кода, как загнать тикеты ордеров в массив?

Вот начал набирать, верно?

void xxx(int otype)
{
  int Mas []; int ticket = 0; 
  for (int i = OrdersTotal()-1; i>=0; i--)
  { 
    if (OrderSelect(i, SELECT_BY_POS,MODE_TRADES))
    {
      if (OrderSymbol()==Symbol() && OrderMagicNumber()==Magic && OrderType() == otype)
        ticket = OrderTicket();
        Mas[] = {ticket};
 
Trader7777:

Можно пожалуйста строчку кода, как загнать тикеты ордеров в массив?

Вот начал набирать, верно?


ticket = OrderTicket();
Mas[i] = OrderTicket();
Но лучше двумерный массив, куда можно ещё и другие параметры ордера вбить. Об этом читать можно здесь.
 
Sepulca:

Сходу, Bars+239, зачем Вам номер бара, которого даже в истории нет?

И вообще "количество баров на каждом тике" Что это??????

Попробуйте объяснить проблему подробнее, а то смех один.....

Нет такого термина "порядковый номер пятиминутки".......

А мне не нужен номер бара,которого нет в истории.

Мне нужно, что бы к порядковому номеру последнего текущего бара,например 100 программа прибавила 239 и число 339 было занесено

в переменную pY1, а число 100 в переменную pY.

И программа действительно делает это.

НО ПОЧЕМУ ТО НЕ НА КАЖДОЙ СВЕЧЕ

А мне нужно что бы значения pY и pY1 обновлялись 1 раз в 5 минут и на КАЖДОЙ пятиминутной свече.

Я понимаю,что у каждой пятиминутной свечи несколько тиков и на всех тиках одной свечи значения

pY и pY1 будут одинаковые.

Но я не понимаю почему значения pY и pY1 не обновляются НА КАЖДОЙ свече.

Они же обновляются через n - количество свечей.

А почему не на КАЖДОЙ?

Может быть я употребил неправильный термин.

Но разве в момент образования нового пятиминутного бара предопределенная переменная Bars не принимает

значение порядкового номера этого нового пятиминутного бара?



 
solnce600:

А мне не нужен номер бара,которого нет в истории.

Мне нужно, что бы к порядковому номеру последнего текущего бара,например 100 программа прибавила 239 и число 339 было занесено

в переменную pY1, а число 100 в переменную pY.

И программа действительно делает это.

НО ПОЧЕМУ ТО НЕ НА КАЖДОЙ СВЕЧЕ

А мне нужно что бы значения pY и pY1 обновлялись 1 раз в 5 минут и на КАЖДОЙ пятиминутной свече.

Я понимаю,что у каждой пятиминутной свечи несколько тиков и на всех тиках одной свечи значения

pY и pY1 будут одинаковые.

Но я не понимаю почему значения pY и pY1 не обновляются НА КАЖДОЙ свече.

Они же обновляются через n - количество свечей.

А почему не на КАЖДОЙ?

Может быть я употребил неправильный термин.

Но разве в момент образования нового пятиминутного бара предопределенная переменная Bars не принимает

значение порядкового номера этого нового пятиминутного бара?





Вы совсем запутались... Текущий бар всегда имеет номер 0. И если пришло время, в Вашем случае очередные пять минут, то тот бар, который Вы исследовали несколько секунд назад уже будет №1, а новый, вновь образовавшийся получит №0.

Но по Вашему коду должно с каждым новым баром должно смещаться на единичку......???

Дык может дело не в бобине??? Как Вы смотрите журнал? В метатрейдере? Попробуйте <Журнал><Открыть> и дальше стандартным Блокнотом открыть последний файл. Сталкивался с этим, иногда, если много сообщений в журнал, метатрейдер не все показывает... Попробуйте

Причина обращения: