Standart göstergeleri yeniden mi çiziyorsunuz?! - sayfa 6

 
Durdu, doğrulama algoritmasında bir hata bulamıyorum.
 
test senaryomu yaptım
//+------------------------------------------------------------------+
//|                                                   CheckiTime.mq4 |
//|                                                             Rosh |
//|                        http://www.metaquotes.ru/forum/7790/page3 |
//+------------------------------------------------------------------+
#property copyright "Rosh"
#property link      "http://www.metaquotes.ru/forum/7790/page3"
#property show_inputs

extern string Currency1="GBPUSD";
extern string Currency2="EURUSD";
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
  string Currency;
  datetime AnotherTime;
  //datetime RightTime;
  int errorCounter;
  int AnotherBar,RightBar;
  int handle= FileOpen("CheckiTime.csv",FILE_CSV|FILE_WRITE,';');
  if (handle<0) Print("Ошибка открытия файла ",GetLastError());
   else FileWrite(handle,"index","Time[index]","AnotherBar","RightBar");
  
  if (Symbol()==Currency1) Currency=Currency2; else Currency=Currency1;
  int limit=MathMin(Bars,iBars(Currency,Period()));
//----
   for (int i=limit-1;i>=0;i--)   
      {
      AnotherBar=iBarShift(Currency,Period(),Time[i]);
      AnotherTime=iTime(Currency,Period(),AnotherBar);
      if (Time[i]!=AnotherTime &&(Time[i]==iTime(Currency,Period(),AnotherBar+1)||Time[i]==iTime(Currency,Period(),AnotherBar-1)))
         {
         errorCounter++;
         if (Time[i]==iTime(Currency,Period(),AnotherBar+1)) RightBar=AnotherBar+1; else RightBar=AnotherBar-1;
         if (handle>0) FileWrite(handle,i,TimeToStr(Time[i]),AnotherBar,RightBar);
         }
      }
   if (handle>0) FileClose(handle);   
   Print("Symbol=",Symbol(),"   Currency=",Currency);
   Print("Ошибок ",errorCounter);
//----
   return(0);
  }
//+------------------------------------------------------------------+



EURUSD H4'te (MIG demo hesabı) başlatıldı, sonuç

indeks Zaman[index] AnotherBar RightBar
2075 26.09.2005 0:00 1829 1828
1770 31/10/2005 0:00 AM 1674 1673
1709 07.11.2005 0:00 1643 1642
1550 28.11.2005 0:00 AM 1550 1549
1519 05.12.2005 0:00 1519 1518
1488 12.12.2005 0:00 1488 1487
1457 19.12.2005 0:00 AM 1457 1456
1364 01/09/2006 0:00 1364 1363
1333 16.01.2006 0:00 1333 1332
1209 13.02.2006 0:00 1209 1208
1178 02/20/2006 0:00 AM 1178 1177
1085 13.03.2006 0:00 1085 1084
513 24.07.2006 0:00 514 513
482 31.07.2006 0:00 483 482
389 21.08.2006 0:00 390 389
358 28.08.2006 0:00 359 358
203 02.10.2006 0:00 204 203
172 09.10.2006 0:00 173 172
79 30.10.2006 0:00 80 79
48 06.11.2006 0:00 49 48
17 13.11.2006 0:00 18 17


Sonra GBPUSD H4'te çalıştırdım, sonuç:
indeks Zaman[index] AnotherBar RightBar
2639 21.03.2005 0:00 3168 3167
2609 28.03.2005 0:00 AM 3137 3136
2339 30.05.2005 0:00 AM 2858 2857
2309 06.06.2005 0:00 2827 2826
2279 06/13/2005 0:00 AM 2796 2795
2249 06/20/2005 0:00 AM 2765 2764
2083 27.07.2005 16:00 2593 2592
2082 27/07/2005 20:00 2591 2590
2081 28.07.2005 0:00 2589 2588
2080 28.07.2005 04:00 2587 2586
2079 28.07.2005 8:00 2585 2584
2078 28.07.2005 12:00 2583 2582
2077 28.07.2005 16:00 2581 2580
2076 28.07.2005 20:00 2579 2578
2075 29.07.2005 0:00 2577 2576
2074 29.07.2005 4:00 AM 2575 2574
2073 29.07.2005 08:00 2573 2572
2072 29.07.2005 12:00 2571 2570
2071 29.07.2005 16:00 2569 2568
2069 01/08/2005 0:00 2564 2563
2068 01/08/2005 4:00 2562 2561
2067 01/08/2005 8:00 2560 2559
2066 01/08/2005 12:00 2558 2557
2065 08/01/2005 16:00 2556 2555
2064 08/01/2005 20:00 2554 2553
2063 08/02/2005 0:00 2552 2551
2062 02.08.2005 4:00 2550 2549
2061 02.08.2005 8:00 2548 2547
2060 02.08.2005 12:00 2546 2545
2059 02.08.2005 16:00 2544 2543
2058 08/02/2005 20:00 2542 2541
2057 03.08.2005 0:00 2540 2539
2056 08/03/2005 4:00 2538 2537
2055 08/03/2005 8:00 2536 2535
2039 08/08/2005 0:00 2503 2502
2022 10.08.2005 20:00 2469 2468
2021 11.08.2005 0:00 2467 2466
2020 11.08.2005 4:00 2465 2464
2019 11.08.2005 8:00 2463 2462
2018 11.08.2005 12:00 2461 2460
2017 11.08.2005 16:00 2459 2458
2016 11.08.2005 20:00 2457 2456
2015 12.08.2005 0:00 2455 2454
2014 12.08.2005 4:00 2453 2452
2013 12.08.2005 8:00 2451 2450
2012 12.08.2005 12:00 2449 2448
2011 12.08.2005 16:00 2447 2446
2010 12.08.2005 20:00 2445 2444
2006 15.08.2005 12:00 2436 2435
2005 15.08.2005 16:00 2434 2433
2004 08/15/2005 20:00 2432 2431
2003 08/16/2005 0:00 2430 2429
2002 16.08.2005 04:00 2428 2427
2001 08/16/2005 8:00 AM 2426 2425
2000 16.08.2005 12:00 2424 2423
1999 16.08.2005 16:00 2422 2421
1998 16.08.2005 20:00 2420 2419
1997 17.08.2005 0:00 2418 2417
1996 17.08.2005 4:00 2416 2415
1995 08/17/2005 8:00 AM 2414 2413
1994 17.08.2005 12:00 2412 2411
1993 17.08.2005 16:00 2410 2409
1992 17.08.2005 20:00 2408 2407
1991 18.08.2005 0:00 2406 2405
1990 18.08.2005 4:00 2404 2403
1979 22.08.2005 0:00 2381 2380
1978 22.08.2005 04:00 2379 2378
1977 22.08.2005 8:00 2377 2376
1976 22.08.2005 12:00 2375 2374
1975 22.08.2005 16:00 2373 2372
1974 22.08.2005 20:00 2371 2370
1949 29.08.2005 0:00 2320 2319
1948 29.08.2005 4:00 2318 2317
1947 29.08.2005 8:00 AM 2316 2315
1946 29.08.2005 12:00 2314 2313
1945 29.08.2005 16:00 2312 2311
1944 29.08.2005 20:00 2310 2309
1943 30.08.2005 0:00 2308 2307
1942 30.08.2005 04:00 2306 2305
1925 09/02/2005 0:00 2272 2271
1924 09/02/2005 4:00 2270 2269
1923 09/02/2005 8:00 AM 2268 2267
1922 09/02/2005 12:00 2266 2265
1921 09/02/2005 16:00 2264 2263
1920 09/02/2005 20:00 2262 2261
1909 09/06/2005 16:00 2239 2238
1908 09/06/2005 20:00 2237 2236
1907 09/07/2005 0:00 2235 2234
1906 09/07/2005 4:00 2233 2232
1905 09/07/2005 8:00 2231 2230
1904 09/07/2005 12:00 2229 2228
1903 09/07/2005 16:00 2227 2226
1902 09/07/2005 20:00 2225 2224
1901 09/08/2005 0:00 2223 2222
1900 09/08/2005 4:00 2221 2220
1899 08/09/2005 8:00 AM 2219 2218
1898 09/08/2005 12:00 2217 2216
1897 08/09/2005 16:00 2215 2214
1896 09/08/2005 20:00 2213 2212
1895 09/09/2005 0:00 2211 2210
1894 09/09/2005 4:00 2209 2208
1893 9/9/2005 8:00 AM 2207 2206
1889 09/12/2005 0:00 AM 2198 2197
1888 12.09.2005 4:00 AM 2196 2195
1887 09/12/2005 8:00 AM 2194 2193
1886 09/12/2005 12:00 pm 2192 2191
1885 09/12/2005 04:00 PM 2190 2189
1884 09/12/2005 20:00 2188 2187
1883 13.09.2005 0:00 2186 2185
1882 13.09.2005 4:00 AM 2184 2183
1881 13.09.2005 8:00 2182 2181
1880 13.09.2005 12:00 2180 2179
1879 13.09.2005 04:00 PM 2178 2177
1878 13.09.2005 20:00 2176 2175
1877 09/14/2005 0:00 AM 2174 2173
1860 16.09.2005 20:00 2140 2139
1844 21.09.2005 12:00 2107 2106
1843 21.09.2005 16:00 2105 2104
1842 21.09.2005 20:00 2103 2102
1841 22.09.2005 0:00 2101 2100
1840 22/09/2005 4:00 AM 2099 2098
1839 22.09.2005 08:00 2097 2096
1838 22.09.2005 12:00 2095 2094
1837 22.09.2005 16:00 2093 2092
1836 22.09.2005 20:00 2091 2090
1835 23.09.2005 0:00 2089 2088
1834 23.09.2005 04:00 2087 2086
1833 23.09.2005 08:00 2085 2084
1832 23.09.2005 12:00 2083 2082
1831 23.09.2005 16:00 2081 2080
1830 23.09.2005 20:00 2079 2078
1811 28.09.2005 20:00 2042 2041
1810 29.09.2005 0:00 2040 2039
1809 29.09.2005 4:00 2038 2037
1808 29.09.2005 8:00 2036 2035
1807 29.09.2005 12:00 2034 2033
1806 29/09/2005 16:00 2032 2031
1805 29/09/2005 20:00 2030 2029
1804 09/30/2005 0:00 2028 2027
1803 09/30/2005 4:00 AM 2026 2025
1802 30.09.2005 08:00 2024 2023
1801 30.09.2005 12:00 2022 2021
1800 30.09.2005 16:00 2020 2019
1799 30.09.2005 20:00 2018 2017
1794 03.10.2005 12:00 2009 2008
1793 03.10.2005 16:00 2007 2006
1792 03.10.2005 20:00 2005 2004
1791 04.10.2005 0:00 2003 2002
1790 04.10.2005 4:00 2001 2000
1789 04.10.2005 8:00 1999 1998
1788 04.10.2005 12:00 1997 1996
1787 04.10.2005 16:00 1995 1994
1786 04.10.2005 20:00 1993 1992
1785 05.10.2005 0:00 1991 1990
1784 05.10.2005 4:00 1989 1988
1783 5 Ekim 2005 08:00 1987 1986
1782 05.10.2005 12:00 1985 1984
1781 05.10.2005 16:00 1983 1982
1780 05.10.2005 20:00 1981 1980
1779 06.10.2005 0:00 1979 1978
1778 06.10.2005 4:00 1977 1976
1766 10/10/2005 0:00 AM 1954 1953
1765 10/10/2005 4:00 AM 1952 1951
1764 10/10/2005 8:00 AM 1950 1949
1763 10.10.2005 12:00 1948 1947
1762 10.10.2005 16:00 1946 1945
1761 10.10.2005 20:00 1944 1943
1744 13.10.2005 16:00 1910 1909
1743 13.10.2005 20:00 1908 1907
1742 14.10.2005 0:00 AM 1906 1905
1741 14.10.2005 04:00 1904 1903
1740 14.10.2005 8:00 AM 1902 1901
1739 14.10.2005 12:00 pm 1900 1899
1738 14.10.2005 16:00 1898 1897
1737 14.10.2005 20:00 1896 1895
1727 10/18/2005 8:00 AM 1877 1876
1726 18.10.2005 12:00 pm 1875 1874
1725 18.10.2005 04:00 PM 1873 1872
1724 18.10.2005 20:00 1871 1870
1723 19.10.2005 0:00 AM 1869 1868
1722 19.10.2005 4:00 AM 1867 1866
1721 19.10.2005 8:00 AM 1865 1864
1720 19.10.2005 12:00 pm 1863 1862
1719 19.10.2005 04:00 PM 1861 1860
1718 19.10.2005 20:00 1859 1858
1717 20.10.2005 0:00 AM 1857 1856
1716 20.10.2005 4:00 AM 1855 1854
1715 20.10.2005 8:00 AM 1853 1852
1714 20.10.2005 12:00 1851 1850
1713 20.10.2005 16:00 1849 1848
1712 20.10.2005 20:00 1847 1846
1711 21.10.2005 0:00 1845 1844
1704 24.10.2005 0:00 AM 1832 1831
1703 24.10.2005 4:00 AM 1830 1829
1702 24.10.2005 8:00 AM 1828 1827
1701 24.10.2005 12:00 1826 1825
1700 24.10.2005 16:00 1824 1823
1699 24.10.2005 20:00 1822 1821
1698 10/25/2005 0:00 AM 1820 1819
1697 10/25/2005 4:00 AM 1818 1817
1696 10/25/2005 8:00 AM 1816 1815
1695 25.10.2005 12:00 1814 1813
1694 25.10.2005 16:00 1812 1811
1693 25.10.2005 20:00 1810 1809
1692 26.10.2005 0:00 AM 1808 1807
1691 26.10.2005 4:00 AM 1806 1805
1690 26.10.2005 8:00 AM 1804 1803
1689 26.10.2005 12:00 1802 1801
1688 26.10.2005 16:00 1800 1799
1687 26.10.2005 20:00 1798 1797
1686 27.10.2005 0:00 AM 1796 1795
1685 27.10.2005 04:00 1794 1793
1684 27.10.2005 08:00 1792 1791
1683 27.10.2005 12:00 1790 1789
1682 27.10.2005 16:00 1788 1787
1681 27.10.2005 20:00 1786 1785
1680 28/10/2005 0:00 AM 1784 1783
1679 28.10.2005 04:00 1782 1781
1678 28.10.2005 08:00 1780 1779
1673 31/10/2005 0:00 AM 1771 1770
1672 31/10/2005 04:00 1769 1768
1671 31/10/2005 08:00 1767 1766
1670 31/10/2005 12:00 1765 1764
1669 31/10/2005 04:00 PM 1763 1762
1668 31/10/2005 20:00 1761 1760
1667 01.11.2005 0:00 1759 1758
1666 11/01/2005 4:00 AM 1757 1756
1665 11/01/2005 8:00 AM 1755 1754
1664 01.11.2005 12:00 1753 1752
1663 01.11.2005 16:00 1751 1750
1662 11/01/2005 20:00 1749 1748
1661 02.11.2005 0:00 1747 1746
1644 04.11.2005 20:00 1713 1712
1627 09.11.2005 12:00 1680 1679
1626 09.11.2005 16:00 1678 1677
1625 09.11.2005 20:00 1676 1675
1624 10.11.2005 0:00 1674 1673
1623 11/10/2005 4:00 AM 1672 1671
1622 11/10/2005 08:00 1670 1669
1621 10.11.2005 12:00 1668 1667
1620 10.11.2005 16:00 1666 1665
1619 10.11.2005 20:00 1664 1663
1618 11/11/2005 0:00 AM 1662 1661
1617 11/11/2005 4:00 AM 1660 1659
1616 11/11/2005 8:00 AM 1658 1657
1615 11.11.2005 12:00 1656 1655
1614 11/11/2005 04:00 PM 1654 1653
1613 11.11.2005 20:00 1652 1651
1610 14.11.2005 04:00 1647 1646
1609 14.11.2005 08:00 1645 1644
1608 14.11.2005 12:00 1643 1642
1607 14.11.2005 04:00 1641 1640
1606 14.11.2005 20:00 1639 1638
1605 11/15/2005 0:00 AM 1637 1636
1604 11/15/2005 4:00 AM 1635 1634
1603 11/15/2005 8:00 AM 1633 1632
1602 11/15/2005 12:00 1631 1630
1601 11/15/2005 16:00 1629 1628
1600 11/15/2005 20:00 1627 1626
1599 16.11.2005 0:00 AM 1625 1624
1598 16.11.2005 4:00 AM 1623 1622
1597 16.11.2005 08:00 1621 1620
1596 16.11.2005 12:00 1619 1618
1595 16.11.2005 04:00 PM 1617 1616
1594 16.11.2005 20:00 1615 1614
1580 21.11.2005 0:00 AM 1588 1587
1579 21.11.2005 04:00 1586 1585
1578 21.11.2005 08:00 1584 1583
1577 21.11.2005 12:00 1582 1581
1575 21.11.2005 20:00 1577 1576
1549 28.11.2005 0:00 AM 1551 1550
1270 01/30/2006 0:00 AM 1272 1271
1239 06.02.2006 0:00 1241 1240
1208 13.02.2006 0:00 1210 1209
1177 20.02.2006 0:00 1179 1178
1146 27.02.2006 0:00 1148 1147
1115 06.03.2006 0:00 1117 1116
1084 13.03.2006 0:00 1086 1085
1054 03/20/2006 0:00 1055 1054
482 31.07.2006 0:00 483 482
451 08/07/2006 0:00 452 451
420 14.08.2006 0:00 421 420
389 21.08.2006 0:00 390 389
358 28.08.2006 0:00 359 358
327 04.09.2006 0:00 328 327
296 11.09.2006 0:00 297 296
265 18.09.2006 0:00 266 265


günlük kaydı:
2006.11.15 22:40:07 CheckiTime GBPUSD,H4: kaldırıldı
2006.11.15 22:40:07 CheckiTime GBPUSD,H4: Hata 287
2006.11.15 22:40:07 CheckiTime GBPUSD,H4: Sembol=GBPUSD Para Birimi=EURUSD
2006.11.15 22:40:06 CheckiTime GBPUSD,H4 girişleri: Currency1="GBPUSD"; Currency2="EURUSD";
2006.11.15 22:40:05 CheckiTime GBPUSD,H4: başarıyla yüklendi
2006.11.15 22:35:56 CheckiTime EURUSD,H4: kaldırıldı
2006.11.15 22:35:56 CheckiTime EURUSD,H4: 21 hata
2006.11.15 22:35:56 CheckiTime EURUSD,H4: Sembol=EURUSD Para Birimi=GBPUSD
2006.11.15 22:35:56 CheckiTime EURUSD,H4 girişleri: Currency1="GBPUSD"; Currency2="EURUSD";
2006.11.15 22:35:54 CheckiTime EURUSD,H4: başarıyla yüklendi
2006.11.15 22:35:30 'CheckiTime' Derleme

 
Test komut dosyasının son sürümü

//+------------------------------------------------------------------+
//|                                                   CheckiTime.mq4 |
//|                                                             Rosh |
//|                        http://www.metaquotes.ru/forum/7790/page3 |
//+------------------------------------------------------------------+
#property copyright "Rosh"
#property link      "http://www.metaquotes.ru/forum/7790/page3"
#property show_inputs

extern string Currency1="GBPUSD";
extern string Currency2="EURUSD";
//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start()
  {
  string Currency;
  datetime AnotherTime;
  //datetime RightTime;
  int errorCounter;
  int AnotherBar,RightBar;
  int handle= FileOpen("CheckiTime.csv",FILE_CSV|FILE_WRITE,';');
  if (handle<0) Print("Ошибка открытия файла ",GetLastError());
   else FileWrite(handle,"index","Time[index]","AnotherBar","RightBar","Time","AnotherTime","Time-AnotherTime");
  
  if (Symbol()==Currency1) Currency=Currency2; else Currency=Currency1;
  int limit=MathMin(Bars,iBars(Currency,Period()));
//----
   for (int i=limit-1;i>=0;i--)   
      {
      AnotherBar=iBarShift(Currency,Period(),Time[i]);
      AnotherTime=iTime(Currency,Period(),AnotherBar);
      if (Time[i]!=AnotherTime &&(Time[i]==iTime(Currency,Period(),AnotherBar+1)||Time[i]==iTime(Currency,Period(),AnotherBar-1)))
         {
         errorCounter++;
         if (Time[i]==iTime(Currency,Period(),AnotherBar+1)) RightBar=AnotherBar+1; else RightBar=AnotherBar-1;
         if (handle>0) FileWrite(handle,i,TimeToStr(Time[i]),AnotherBar,RightBar,Time[i],AnotherTime,Time[i]-AnotherTime);
         }
      }
   if (handle>0) FileClose(handle);   
   Print("Symbol=",Symbol(),"   Currency=",Currency);
   Print("Ошибок ",errorCounter);
//----
   return(0);
  }
//+------------------------------------------------------------------+



Gerçekten de, Pazar barları için 4 saatte (MIG demo hesabı) bu davranışı açıklayamam.

 
Görüyorum ki, Rosh, gelecek rüya için araştırma yapmayı seviyorsun. ;hakkında)
Bu arada, başka bir düşünce, kontrol, çalışma olacak mı?
Yoksa bu son özgeçmiş ve "SNOW-GU-ROCH-KA!!!" demenin zamanı mı? onlar. "raz-ra-bot-chi-ki!!" :hakkında)
 
Onay için kalan son seçenek, yanlış çubuklara dikey çizgiler çizen bir komut dosyası yapmaktır.
 
Pek anlamıyorum, neden böyle?
 
Yanlış iTime() isabeti ile bu yerlerde dikey çizgiler ayarlayamama arasında bir bağlantı olduğundan emin olmak için.
 
Daha önce tanımladığım sorunun bu olduğunu doğru anlıyor muyum? Hat ayarlanmadı mı? "Evet" ise, bu yalnızca çizgiler için değil, genel olarak verilen çubuktaki tüm nesneler için de geçerlidir. Aynı şekilde, herhangi bir nesnenin ayar noktası belirtilen çubuklardan "hareket eder".
 
Bu, böyle olduğu anlamına gelir - bu çubuklara grafik nesnelerin kurulmaması ortak bir yapıya sahiptir ve bir şekilde komşu çubuklar arasındaki süreyi kontrol etmek ve bu süreyi Period() ile bir ilişki için kontrol etmekle bağlantılıdır (bence öyle) .
 
Hatırladığım kadarıyla, hacme dikkat etmeniz gerekiyor, 1'e eşit hacme sahip çubuklar için test cihazında modelleme yaparken, test cihazı, örneğin, 00:00 başlangıç zamanı yerine günlerce verdi. 23:59 saati (bence Slava, sonra nedenini açıkladı) ve bazı diğer özellikler vardı, bunlardan kaçınmak için ses seviyesini düzelttim ve ayrıca çubuğun başlangıç zamanını "normalleştirdim".

"Modelleme?!!!"
"MetaTrader 4. Derleme 181."
"MetaTrader 4 yapı 183"

Daha detaylı hatırlamıyorum.
Neden: