Przejdź do treści
MQL5 · MetaTrader 5 · po polsku
kod odczarowany

MQL5 / Instrument

SYMBOL_BASIS

Instrument bazowy, na którym oparty jest ten instrument pochodny. To jest najprostszy sposób, żeby kod sam rozpoznał, że pracuje na

string SymbolInfoString(string symbol, SYMBOL_BASIS);

1 fragment kodu z tej strony przeszedł przez kompilator MetaEditor build 6090, 2026-08-05.

Dla kontraktów terminowych, opcji i CFD nazwa instrumentu bazowego. Dla instrumentów pierwotnych łańcuch pusty.

Dlaczego to nie jest oczywiste

To jest najprostszy sposób, żeby kod sam rozpoznał, że pracuje na instrumencie pochodnym, i sięgnął po dane bazowe. Przydaje się przy strategiach porównujących kontrakt z jego bazą oraz przy wykrywaniu rolowania: po zmianie serii nazwa kontraktu się zmienia, a instrument bazowy zostaje ten sam.

Warto pamiętać, że pole wypełniają nie wszyscy brokerzy. Pusty łańcuch nie dowodzi, że instrument nie jest pochodny — dowodzi tylko, że broker tej informacji nie podał.

Kod

SYMBOL_BASIS
string baza = SymbolInfoString(symbol, SYMBOL_BASIS);

if(baza != "" && SymbolSelect(baza, true))
  {
   MqlTick tick;
   if(SymbolInfoTick(baza, tick))
      PrintFormat("%s opiera sie na %s, cena bazy %.5f", symbol, baza, tick.bid);
  }

Powiązane