Cześć.
Załóżmy, że mam wartość w zmiennej typu datetime. Aby uzyskać nr świecy, która jest na wykresie w miejscu wskazywanym przez tę zmienną, muszę się bawić w wyszukiwanie jej numeru, czy jest jakiś prosty sposób na to?
Odczyt nr. świeczki, która pojawiła się w określonym czasie
Odczyt nr. świeczki, która pojawiła się w określonym czasie
"W Bogu wszelkie nasze bogactwo."
iBarShift()
int iBarShift(string symbol, int timeframe, datetime time, bool exact=false)
Funkcja iBarShift zwraca indeks świecy, której czas otwarcia jest zadany trzecim argumentem dla instrumentu zadanego pierwszym argumentem i przedziału czasowego zadanego drugim argumentem. Jeżeli nie ma świecy z szukanym czasem otwarcia, funkcja zwraca -1 lub najbliższą wartość przesunięcia świecy zależnie od wartości argumentu czwartego.
Parametry:
symbol - Symbol instrumentu, NULL - bieżący symbol.
timeframe - Przedział czasowy.
time - Czas otwarcia świecy.
exact - Flaga wartości zwracana gdy nie znaleziono zadanej świecy. FALSE - najbliższa świeca, TRUE - zwraca -1.
Przykład:
int swieca = iBarShift("EURPLN", PERIOD_M1, D'2007.04.12 13:00');
int iBarShift(string symbol, int timeframe, datetime time, bool exact=false)
Funkcja iBarShift zwraca indeks świecy, której czas otwarcia jest zadany trzecim argumentem dla instrumentu zadanego pierwszym argumentem i przedziału czasowego zadanego drugim argumentem. Jeżeli nie ma świecy z szukanym czasem otwarcia, funkcja zwraca -1 lub najbliższą wartość przesunięcia świecy zależnie od wartości argumentu czwartego.
Parametry:
symbol - Symbol instrumentu, NULL - bieżący symbol.
timeframe - Przedział czasowy.
time - Czas otwarcia świecy.
exact - Flaga wartości zwracana gdy nie znaleziono zadanej świecy. FALSE - najbliższa świeca, TRUE - zwraca -1.
Przykład:
int swieca = iBarShift("EURPLN", PERIOD_M1, D'2007.04.12 13:00');
Zakłada dlatego że broker np może nie mieć kwotowań bo np miał awarie, a więc i terminal ich nie ma, albo masz luki w danych bo terminal był wyłączony przez jakiś czas i nie ma kwotowań z jakiegoś okresu - to żadna nowość że mogą być luki w danych.Nurtuje mnie pytanie dlaczego funkcja zakłada to, że nie znajdzie takiej świecy którą chcemy skoro każda sekunda dnia zawarta jest w jakiejś świecy. Jeśli ktoś zna odpowiedź i może się podzielić tą wiedzą to z góry dzięki Smile
Dlatego wybierasz czy ma Ci wskazać najbliższą cenę przed czy za wskazanym punktem czasu.
Funkcja ma pobrać cenę z zadanego punktu czasu i w razie braku danych sam decydujesz czy ma zwrócić cenę przed czy za tym punktem.xpep pisze:mnie nurtuje o co chodzi Very Happy
======================================================
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..
Nie głupi ten co nie wie, lecz ten który nie chce się nauczyć..