Załóżmy, że mam otwarte kilka zleceń (ten sam typ - BUY lub SELL). Każde innej wielkości.
W jaki najprostszy i najszybszy sposób można obliczyć "wspólną" wartość BE ?
(chodzi mi o taką wartość, że jak cena dojdzie do niej i w tym momencie zamknę wszystkie zlecenia to nic nie stracę i nie zyskam, czyli taka wartość globalna, wspólna dla tych zleceń)
Mam nadzieję, że wyraziłem się w miarę jasno
Obliczenie"wspólnego" BE
-
- Bywalec
- Posty: 10
- Rejestracja: 11 sty 2012, 21:07
Dla czterech pozycji otwartych :
(cena otwarcia pierwszego zlecenia*lot pierwszego)+(cena otwarcia drugiego zlecenia*lot drugiego)+(cena otwarcia trzeciego zlecenia*lot trzeciego)+(cena otwarcia czwartego zlecenia*lot czwartego).
I to wszystko dzielisz przez ( lot pierwszego+lot drugiego+lot trzeciego+lot czwartego).
I tak samo dla większej lub mniejszej ilości zleceń.
Wynikiem jest cena BE dla wszystkich zleceń.
Jeśli masz otwarte jednocześnie BUY i SELL to zlecenia się równoważą na pewnym poziomie i BE nie istnieje, ponieważ nigdy nie będziesz miał "0"
(cena otwarcia pierwszego zlecenia*lot pierwszego)+(cena otwarcia drugiego zlecenia*lot drugiego)+(cena otwarcia trzeciego zlecenia*lot trzeciego)+(cena otwarcia czwartego zlecenia*lot czwartego).
I to wszystko dzielisz przez ( lot pierwszego+lot drugiego+lot trzeciego+lot czwartego).
I tak samo dla większej lub mniejszej ilości zleceń.
Wynikiem jest cena BE dla wszystkich zleceń.
Jeśli masz otwarte jednocześnie BUY i SELL to zlecenia się równoważą na pewnym poziomie i BE nie istnieje, ponieważ nigdy nie będziesz miał "0"
Solą życia jest kasa.
- Pierz Andrzej
- Przyjaciel Forum
- Posty: 1200
- Rejestracja: 02 lip 2006, 14:17
Kod: Zaznacz cały
double be(int cmd)
{
double lot = 0;
double sum = 0;
for (int i = OrdersTotal()-1;i>=0;i--)
{
OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
if (Symbol() == OrderSymbol() && cmd ==OrderType())
{
RefreshRates();
sum += OrderOpenPrice() * OrderLots();
lot += OrderLots();
}
}
if (lot != 0) return(sum / lot);
return(-1);
}
Andrzej Pierz
z poważaniem
Andrzej Pierz
FOREX-SERVICE
Andrzej Pierz
FOREX-SERVICE