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

MQL5 / Transakcja

DEAL_VOLUME

Wolumen faktycznie wykonany w tej transakcji. To jest jedyne miejsce, gdzie widać, ile naprawdę weszło na rynek.

double HistoryDealGetDouble(ulong bilet, DEAL_VOLUME);

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

Wielkość, która realnie zmieniła stan pozycji. Może być mniejsza od wolumenu zlecenia.

Dlaczego to nie jest oczywiste

To jest jedyne miejsce, gdzie widać, ile naprawdę weszło na rynek. ORDER_VOLUME_INITIAL mówi, o ile prosiłeś, a suma wolumenów transakcji z tego zlecenia — ile dostałeś.

Przy strategii, która wylicza wielkość pozycji z ryzyka, ta różnica przekłada się wprost na ryzyko faktyczne. Wykonanie 0.7 lota zamiast zamówionego jednego oznacza, że ryzykujesz o trzydzieści procent mniej, niż zakłada twoja arytmetyka — i że stop loss wyliczony na jeden lot chroni kwotę, której nie masz.

Kod

DEAL_VOLUME
double wolumen = HistoryDealGetDouble(bilet, DEAL_VOLUME);
double cena = HistoryDealGetDouble(bilet, DEAL_PRICE);

PrintFormat("wykonano %.2f lota po %.5f", wolumen, cena);

Powiązane