Funkcja double iHigh() zwraca najwyższą cenę (high) świecy o określonym indeksie dla odpowiedniego instrumentu finansowego i przedziału czasowego. Więcej informacji można znaleźć w specyfikacji MQL4.
Skrypt do wyświetlenia ceny high świecy z indeksem 1 dla bieżącego instrumentu finansowego _Symbol i bieżącego przedziału czasowego PERIOD_CURRENT .
#property strict
void OnStart()
{
//---
string symbolName = _Symbol; // bieżący instrument finansowy
ENUM_TIMEFRAMES timeFrame = PERIOD_CURRENT; // bieżący przedział czasowy
int indexBar = 1; // indeks świecy
//--- znaleźć cenę high
double highPrice = iHigh(symbolName, timeFrame, indexBar);
//--- wyświetlić wynik
Print("Cena high świecy 1, bieżącego symbolu i timeframe-u = ",highPrice);
}
Rys. 1. Przykład stosowania funkcji iHigh().
Jeśli trzeba znaleźć cenę high świecy na tym wykresie notowań, gdzie program MQL4 został uruchomiony, to zalecane jest stosowanie predefiniowanej tablicy High[] .
Skrypt do wyświetlenia cen high świec dla różnych instrumentów finansowych, przedziałów czasowych i indeksów.
#property strict
void OnStart()
{
//--- znaleźć ceny high
double highEURUSD_M5_2 = iHigh("EURUSD", PERIOD_M5, 2);
double highUSDCHF_H1_3 = iHigh("USDCHF", PERIOD_H1, 3);
double highCADJPY_D1_10 = iHigh("CADJPY", PERIOD_D1, 10);
//--- wyświetlić wynik
Print("Cena high świecy EURUSD, PERIOD_M5, indeks 2 = ",highEURUSD_M5_2);
Print("Cena high świecy USDCHF, PERIOD_H1, indeks 3 = ",highUSDCHF_H1_3);
Print("Cena high świecy CADJPY, PERIOD_D1, indeks 10 = ",highCADJPY_D1_10);
}
Rys. 2. Przykłady stosowania funkcji iHigh().