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

 
tara:
Не ту часть кода выложили:( функцию свою выкладывайте. 



Если Вы про DoubleToStrMorePrecision, то это библиотечная функция :)
 
О ней :) 
 
Тогда, вперед, в анналы, за знаниями :)
 
Roger:
Тогда, вперед, в анналы, за знаниями :)

Либо покажите, либо сами туда отправляйтесь. 
 

Поиск рулит

https://www.mql5.com/ru/articles/1561 

 
Roger:

Поиск рулит

https://www.mql5.com/ru/articles/1561 


Это статья о библиотечных функциях? 
 
tara:
Не ту часть кода выложили:( функцию свою выкладывайте. 

Часть кода правильная, я её специально вырезал и оформил в виде советника, после этого прогнал через тестер стратегий и получился странный результат, как будто глючит функция DoubleToStrMorePrecision стандартной библиотеки stdlib.mqh
 
Roger:



А можете показать значения часов, минут и секунд до вставки в общий номер?

ПыСы. Какова практическая ценность данного преобразования? 


#include <stdlib.mqh>
bool once=false;
int start()
  {
  if (once==false)
     {
    double DTM; // дата и время в формате 0,20130429164459
    int YY=TimeYear(   TimeCurrent());   // Year
    int MN=TimeMonth(  TimeCurrent());   // Month         
    int DD=TimeDay(    TimeCurrent());   // Day
    int HH=TimeHour(   TimeCurrent());   // Hour         
    int MM=TimeMinute( TimeCurrent());   // Minute
    int SS=TimeSeconds(TimeCurrent());   // Second
    
    Alert ("Значение переменной YY = ", YY);
    Alert ("Значение переменной MN = ", MN);
    Alert ("Значение переменной DD = ", DD);
    Alert ("Значение переменной HH = ", HH);
    Alert ("Значение переменной MM = ", MM);
    Alert ("Значение переменной SS = ", SS);
    DTM = YY*0.0001+MN*0.000001+DD*0.00000001+HH*0.0000000001+MM*0.000000000001+SS;
    
   Alert ("Значение переменной DTM с 06 знаками равно ", DoubleToStrMorePrecision(DTM,6));
   Alert ("Значение переменной DTM с 07 знаками равно ", DoubleToStrMorePrecision(DTM,7));
   Alert ("Значение переменной DTM с 08 знаками равно ", DoubleToStrMorePrecision(DTM,8));
   Alert ("Значение переменной DTM с 09 знаками равно ", DoubleToStrMorePrecision(DTM,9));
   Alert ("Значение переменной DTM с 10 знаками равно ", DoubleToStrMorePrecision(DTM,10));
   Alert ("Значение переменной DTM с 11 знаками равно ", DoubleToStrMorePrecision(DTM,11));
   Alert ("Значение переменной DTM с 12 знаками равно ", DoubleToStrMorePrecision(DTM,12));
   Alert ("Значение переменной DTM с 13 знаками равно ", DoubleToStrMorePrecision(DTM,13));
   Alert ("Значение переменной DTM с 14 знаками равно ", DoubleToStrMorePrecision(DTM,14));
   Alert ("Значение переменной DTM с 15 знаками равно ", DoubleToStrMorePrecision(DTM,15));
   once=true;
      }
   return(0);
  }

Вывод такой:

2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной SS = 0
2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной MM = 0
2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной HH = 8
2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной DD = 2
2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной MN = 1
2007.01.02 08:00  double EURUSD,M15: Alert: Значение переменной YY = 2007

 Практическую ценность ещё сам до конца не осознал, но это вторично, тут мне нужно понять почему результат вычислений получается не тот который ожидается

 
Zhunko:
Размер файлов ограничен размером диска, но его отображение ограниченно размером памяти. Вряд ли, у Вас такое количество данных.

В том то и дело, есть идея написать грааль, но она подразумевает что нужна очень большая база данных, вот я и думаю с какой стороны подойти к этому вопросу
 

У меня почему-то, все правильно выводит (не считая кириллицу)

2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 15 çíàêàìè ðàâíî 0.201304150832510
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 14 çíàêàìè ðàâíî 0.01304150832510
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 13 çíàêàìè ðàâíî 0.0130415083251
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 12 çíàêàìè ðàâíî 0.013041508325
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 11 çíàêàìè ðàâíî 0.20130415083
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 10 çíàêàìè ðàâíî 0.2013041508
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 09 çíàêàìè ðàâíî 0.201304151
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 08 çíàêàìè ðàâíî 0.20130415
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 07 çíàêàìè ðàâíî 0.2013042
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DTM ñ 06 çíàêàìè ðàâíî 0.201304
2013.04.14 22:32:52     stdlib GBPUSD,H1: loaded successfully
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé SS = 51
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé MM = 32
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé HH = 8
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé DD = 15
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé MN = 4
2013.04.14 22:32:52     test GBPUSD,H1: Çíà÷åíèå ïåðåìåííîé YY = 2013
Причина обращения: