[АРХИВ] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 3. - страница 102

 

В учебнике написано:
Если FILE_WRITE не комбинируется с FILE_READ, то будет открыт файл нулевой длины. Даже если до открытия в файле были данные, то они будут уничтожены. Если необходимо дописывать данные в существующий файл, то его нужно открывать, используя комбинацию FILE_READ | FILE_WRITE.

Я использую вот так

int handle=FileOpen(Symbol()+".csv",FILE_CSV|FILE_READ|FILE_WRITE,"\t");

в файле смотрю, что всегда есть только последние данные, то есть информация затирается. Как сделать так, что бы информация добавлялась?

 
Профи, подскажите пожалуйста,как сделать так: когда только появился нулевой бар и соответственно первое значение индикатора, который работает на нулевом баре нужно зафиксировать это значение, чтобы после закрытия нулевого бара оно оставалось таким же как и при его открытии.
 
LuRAS:
Профи, подскажите пожалуйста,как сделать так: когда только появился нулевой бар и соответственно первое значение индикатора, который работает на нулевом баре нужно зафиксировать это значение, чтобы после закрытия нулевого бара оно оставалось таким же как и при его открытии.

Запоминаем в переменную время открытия последнего бара - Time[0]. Если значение в этой переменной не равно тому, который в Time[0], то это значит, что пришёл первый тик нового бара. В этой точке запоминаем значение нашего индикатора на нулевом баре. Далее, как только значение в нашей переменной снова станет не равно тому, что в Time[0], советник поймёт, что снова пришёл новый бар. И в этот момент он понимает, что в индикаторной переменной содержится значение индикатора, соответствующее точке открытия предыдущего бара. Это значение он может как-то использовать, а затем снова в индикаторную переменную внести значение индикатора (это ведь теперь уже новая свеча и это первый тик новой свечи).
 
значит надо модифицировать индикатор и делать советник? А нельзя сделать заготовку и через icustom туда вставить свой индикатор?
 
LuRAS:
значит надо модифицировать индикатор и делать советник? А нельзя сделать заготовку и через icustom туда вставить свой индикатор?


Индикатор не нужен для того, чтоб посылать котировки в текстовый документ. Достаточно советника. И обратно - советник не нужен, если индикатор посылает котировки в текстовый документ.
 

Время открытия текущей торговой сессии можно получить из:

iTime(NULL,PERIOD_D1,0)

- А как максимально точно узнать время открытия следующей торговой сессии, в то время как мы все еще в текущей?

Спасибо!

 
chief2000:

Время открытия текущей торговой сессии можно получить из:iTime(NULL,PERIOD_D1,0)

- А как максимально точно узнать время открытия следующей торговой сессии, в то время как мы все еще в текущей?

Спасибо!


iTime(NULL,PERIOD_D1,0)+24*60*60

)))

Вот только никакого отношения к "торговым сессиям" это явно не имеет

 
Figar0:

)))

Вот только никакого отношения к "торговым сессиям" это явно не имеет

Это именно то что я применяю сейчас, но "оказалось" что бывают укороченные сессии и это решение заскакивает на следующую, но не в самом ее начале, а чуть дальше. Может есть еще какой-нибудь способ?

Спасибо!

 
chief2000:

Это именно то что я применяю сейчас, но "оказалось" что бывают укороченные сессии и это решение заскакивает на следующую, но не в самом ее начале, а чуть дальше. Может есть еще какой-нибудь способ?

Спасибо!

https://www.mql5.com/ru/forum/132894/page12#464927