Budowanie plików .hst za pomocą MQL4
Strona 1 z 4 123 ... OstatniOstatni
Pokaż wyniki od 1 do 10 z 31

Wątek: Budowanie plików .hst za pomocą MQL4

  1. #1
    Cóż, widziałem period_converter.mq4, który pochodzi z Metatrader 4. To, co chcę zrobić, aby zbudować pliki .hst dla mql4 indiorea. Pytanie brzmi teraz, jak mogę to zrobić dla więcej niż jednego przedziału czasowego?

    Wypróbowałem to sam w łatwy sposób. Oto kod. To skrypt. Więc nie jestem pewien, czy przekonwertuję go do indioru (lub zapętlę to), jak „dopełnię” plik. Dołącza period_converter.mq4. Po prostu zobacz powyższe stwierdzenie dotyczące problemu z tym.
    Wstawiony kod int start () {//---- Komentarz (Rozpoczęcie ......); int intTotalCount = 10; bool bolLoopFinished = false; int intHandle = FileOpen (myfile.csv, FILE_CSV | FILE_WRITE, ','); string strDate; FileWrite (intHandle, Date, Open, High, Low, Close); if (intHandlelt; 0) return (0); int intShiftLoop = 1, intShift = 0; while (! bolLoopFinished) {Comment (Loop:, intShiftLoop ,. Bars:, Bars); iBarShift (NULL, PERIOD_H1, Time # 91; intShiftLoop # 93;, true); intShiftLoop ; if (intShiftLoopgt; Bars) bolLoopFinished = true; } intShiftLoop = 1; intShift = 1; bolLoopFinished = false; while (! bolLoopFinished) {Komentarz (uzyskanie wartości historycznych ......); strDate = funcBuildDate (iTime (NULL, PERIOD_H1, intShift)); FileWrite (intHandle, strDate, iOpen (NULL, PERIOD_H1, intShift), iHigh (NULL, PERIOD_H1, intShift), iLow (NULL, PERIOD_H1, intShift), iClose (NULL, PERIOD_H1, intShift)); intShift ; if (intShiftgt; 10) bolLoopFinished = true; } FileClose (intHandle); Komentarz (Indior skończył);/---- return (0); }/ ---------------------------------------------- -------------------- ciąg funcBuildDate (datetime dtTime) {//YYYY.MM.DD HH: MM: SS int intYear = TimeYear (dtTime); int intMonth = TimeMonth (dtTime); int intDay = TimeDay (dtTime); int intHour = TimeHour (dtTime); int intMinute = TimeMinute (dtTime); int intSeconds = TimeSeconds (dtTime); string strReturnValue = StringConenate (intYear,., intMonth,., intDay,, intHour,:, intMinute,:, intSeconds); return (strReturnValue); }

  2. #2

    Cytat Zamieszczone przez ;
    uruchom ten cholerny test z moimi krokami i kodem
    Twój kod się nie kompiluje. . . . Wstawiony kod statyczny datetime _sTime # 91; 7 # 93 ;;/masz tutaj tablicę if (_sTime == 0/ale nie tablicę tutaj

  3. #3

    Cytat Zamieszczone przez ;
    Cóż, widziałem period_converter.mq4, który pochodzi z Metatrader 4. To, co chcę zrobić, aby zbudować pliki .hst dla mql4 indiorea. Pytanie brzmi teraz, jak mogę to zrobić dla więcej niż jednego przedziału czasowego?
    Czy próbowałeś Period_Converter_ALL_Rev01.mq4? ale pamiętaj o tym:
    http://forum.mql4.com/51224/page5

  4. #4
    Dzięki. Ale szukam czegoś, co może tworzyć pliki .hst z bieżących danych wykresu. Następnie kontynuuj ich budowanie w miarę upływu dniatygodnia. Zasadniczo chcę budować historię na żywo. Mogłem otworzyć 3 ramy czasowe wykresu dla każdej pary, którą handluję (5 min, 15 min, 1 godz.). To dałoby mi pliki .hst, których potrzebuję, ale kod musi być łatwiejszy do zrobienia, więc nie muszę otwierać wszystkich wykresów. Dzięki plikom .hst mogę następnie użyć iOpen, iHigh, iEtc. rzeczy.
    Cytat Zamieszczone przez ;
    {quote} Czy próbowałeś Period_Converter_ALL_Rev01.mq4? ale pamiętaj o tym:
    http://forum.mql4.com/51224/page5
    Cytat Zamieszczone przez ;
    {quote} Czy próbowałeś Period_Converter_ALL_Rev01.mq4? ale pamiętaj o tym:
    http://forum.mql4.com/51224/page5

  5. #5

    Cytat Zamieszczone przez ;
    Dzięki. Ale szukam czegoś, co może tworzyć pliki .hst z bieżących danych wykresu. Następnie kontynuuj ich budowanie w miarę upływu dniatygodnia. Zasadniczo chcę budować historię na żywo. Mogłem otworzyć 3 ramy czasowe wykresu dla każdej pary, którą handluję (5 min, 15 min, 1 godz.). To dałoby mi pliki .hst, których potrzebuję, ale kod musi być łatwiejszy do zrobienia, więc nie muszę otwierać wszystkich wykresów. Dzięki plikom .hst mogę następnie użyć iOpen, iHigh, iEtc. rzeczy. {zacytować}
    OK, może coś mi brakuje, jeśli masz wykres, masz już pliki hst i są one już aktualizowane, gdy otrzymujesz nowe dane od swojego brokera. . . Czego mi brakuje?

  6. #6
    Jedyną aktualizowaną historią jest historia przedziału czasowego otwartych wykresów. Powiedzmy, że masz wykres otwarty dla EURUSD 5 min. Następnie w folderze historii będziesz miał EURUSD5.hst. Ale co chcę historię dla EURUSD 15 min i 1 godz. Ta historia, której nie masz, chyba że masz otwarte lub otwarte w przeszłości dla tego symbolu i przedziału czasowego. Spróbuj. usuń wszystkie swoje pliki .hst. następnie otwórz terminal i otwórz swoją ulubioną parę i przedział czasowy. następnie zamknij terminal. Ponownie zajrzyj do folderu historii i będziesz miał tylko historię dla symbolu i przedziału czasowego, które otworzyłeś.
    Cytat Zamieszczone przez ;
    {quote} OK, może coś mi brakuje, jeśli masz wykres, masz już pliki hst i są one już aktualizowane, gdy otrzymujesz nowe dane od swojego brokera. . . Czego mi brakuje?
    Cytat Zamieszczone przez ;
    {quote} OK, może coś mi brakuje, jeśli masz wykres, masz już pliki hst i są one już aktualizowane, gdy otrzymujesz nowe dane od swojego brokera. . . Czego mi brakuje?

  7. #7

    Cytat Zamieszczone przez ;
    Jedyną aktualizowaną historią jest historia przedziału czasowego otwartych wykresów. Powiedzmy, że masz wykres otwarty dla EURUSD 5 min. Następnie w folderze historii będziesz miał EURUSD5.hst. Ale co chcę historię dla EURUSD 15 min i 1 godz. Ta historia, której nie masz, chyba że masz otwarte lub otwarte w przeszłości dla tego symbolu i przedziału czasowego. Spróbuj. usuń wszystkie swoje pliki .hst. następnie otwórz terminal i otwórz swoją ulubioną parę i przedział czasowy. następnie zamknij terminal. Ponownie zajrzyj do folderu historii, a będziesz mieć tylko historię ...
    OK, łatwo jest rozwiązać ten problem, próbować odczytać dane z innych przedziałów czasowych, które chcesz zaktualizować i sprawdzić, czy nie ma błędu 4066, kiedy nie otrzymasz już błędu 4066, twoje dane zostały zaktualizowane, użyj na przykład iHigh () i określ ramy czasowe . . .

  8. #8

    Cytat Zamieszczone przez ;
    Jedyną aktualizowaną historią jest historia przedziału czasowego otwartych wykresów. Powiedzmy, że masz wykres otwarty dla EURUSD 5 min. Następnie w folderze historii będziesz miał EURUSD5.hst. Ale co chcę historię dla EURUSD 15 min i 1 godz. Ta historia, której nie masz, chyba że masz otwarte lub otwarte w przeszłości dla tego symbolu i przedziału czasowego. Spróbuj. usuń wszystkie swoje pliki .hst. następnie otwórz terminal i otwórz swoją ulubioną parę i przedział czasowy. następnie zamknij terminal. Ponownie zajrzyj do folderu historii, a będziesz mieć tylko historię ...
    Nie zawsze dobrym pomysłem jest usunięcie historii. Kiedy się aktualizuje, może się okazać, że nie masz tyle historii, co wcześniej. Jeśli robisz to jako eksperyment, najlepiej najpierw skopiować pliki do innego folderu.

  9. #9
    Tak robi kod, który napisałem powyżej; najpierw buduje historię, a potem wywołuję iEtc. rzeczy. Minusem jest to, że musiałby odbudować się przy każdym wywołaniu, a ten budynek zajmuje trochę czasu na parę (X o kilka par, a teraz zajmuje dużo czasu).
    Cytat Zamieszczone przez ;
    {quote} OK, łatwo jest rozwiązać ten problem, próbować odczytać dane z innych przedziałów czasowych, które chcesz zaktualizować i sprawdzić błąd 4066, kiedy nie otrzymasz już błędu 4066, twoje dane zostały zaktualizowane, użyj na przykład iHigh () określ ramy czasowe. . .
    Cytat Zamieszczone przez ;
    {quote} OK, łatwo jest rozwiązać ten problem, próbować odczytać dane z innych przedziałów czasowych, które chcesz zaktualizować i sprawdzić błąd 4066, kiedy nie otrzymasz już błędu 4066, twoje dane zostały zaktualizowane, użyj na przykład iHigh () określ ramy czasowe. . .

  10. #10
    Zgoda. Próbowałem tylko pokazać, co się dzieje.
    Cytat Zamieszczone przez ;
    {cyt.} Nie zawsze dobrym pomysłem jest usunięcie historii. Kiedy się aktualizuje, może się okazać, że nie masz tyle historii, co wcześniej. Jeśli robisz to jako eksperyment, najlepiej najpierw skopiować pliki do innego folderu.
    Cytat Zamieszczone przez ;
    {cyt.} Nie zawsze dobrym pomysłem jest usunięcie historii. Kiedy się aktualizuje, może się okazać, że nie masz tyle historii, co wcześniej. Jeśli robisz to jako eksperyment, najlepiej najpierw skopiować pliki do innego folderu.

Uprawnienia umieszczania postów

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Używamy cookies
Używamy cookies, aby jak najlepiej dostosować witrynę do Twoich potrzeb. Kontynuowanie przeglądania tej strony, oznacza zgodę na używanie plików cookies. Aby uzyskać więcej informacji zapoznaj się z naszą Polityką Prywatności.