Pokazywanie postów oznaczonych etykietą Spread. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą Spread. Pokaż wszystkie posty

sobota, 2 lutego 2019

# Jak obstawiać na wyścigach konnych?

Jak obstawiać na wyścigach konnych?

Grać przeciw sobie


Czym różni się hazard na wyścigach konnych od hazardu na forexie? Niczym, z jednym wyjątkiem. Hazard na forexie został wyłączony z ustawy hazardowej.

Warto posłuchać jak funkcjonują wyścigi konne od strony finansowej. Ile zarabia organizator, a ile środków idzie na wygrane. Podobny mechanizm obowiązuje na forexie gdzie organizator poprzez zmiany poziomu kosztów (spread, swap) utrzymuje swoją przewagę nad grającymi.

Jak obstawiać na wyścigach konnych?

poniedziałek, 27 grudnia 2010

# Prosty półautomat do budowania piramidy o stałej wielkości pozycji i stałej odległości

psV Grudzień 27, 2010, 12:04:12 am -------
Prosty półautomat do budowania piramidy o stałej wielkości pozycji i stałej odległościNapisałem prosty półautomat do budowania piramidy o stałej wielkości pozycji i stałej odległości. Jest to wersja mocno niedoskonała, tak więc można jednocześnie grać tylko na jednym instrumencie.

Budowanie siatki następuje tuż po ręcznym zakupie/sprzedaży waloru. Po tym nie należy ręcznie już nic dokładać, bo robot zacznie głupieć. Ewentualnie można wystartować zleceniem typu limit, wtedy po aktywowaniu nastąpi budowanie piramidy.

Wyjście z pozycji:
  • EA będzie automatycznie ustawiało SL na średnioważony BE. Po zburzeniu piramidy pozostały pending order zostanie skasowany.
  • Zamknięcie na zysku ręcznie wedle uznania, celowo nie ustawiam TP.

Piramida BUY
extern double Lots         = 0.1;
extern int    Distance     = 50;
double Sum, SL0, SL1 = 0;
bool Init = True;
void start()
{
//   if(Init) {OrderSend(Symbol(),OP_BUY,Lots,Ask,0,0,0); Init = 0;}    //for testing
   if(OrdersTotal()==0) return;
   OpenPending();
   StopLoss();
   DeletePending();
}
void OpenPending()
{
   OrderSelect(OrdersTotal()-1, SELECT_BY_POS);
   if(OrderType()==OP_BUYSTOP) return;
   OrderSend(Symbol(),OP_BUYSTOP,Lots,OrderOpenPrice()+Distance*Point,0,0,0);
}
void StopLoss()
{
   if(OrdersTotal()<3) return;
   for(int i=0;i<OrdersTotal()-1;i++)
   {
      OrderSelect(i, SELECT_BY_POS);
      Sum = Sum + OrderOpenPrice();
   }
   SL0 = Sum/(OrdersTotal()-1);
   Sum = 0;
   if(SL0==SL1) return;
  
   for(i=0;i<OrdersTotal()-1;i++)
   {
      OrderSelect(i, SELECT_BY_POS);
      OrderModify(OrderTicket(), OrderOpenPrice(), SL0, OrderTakeProfit(), OrderExpiration());
   }
   SL1=SL0;
}
void DeletePending()
{
   if(OrdersTotal()==1)
   {
   OrderSelect(0, SELECT_BY_POS);
   OrderDelete(OrderTicket());
   PlaySound("ok.wav");
   }
}
Piramida SELL
extern double Lots         = 0.1;
extern int    Distance     = 50;
double Sum, SL0, SL1 = 0;
bool Init = True;
void start()
{
//   if(Init) {OrderSend(Symbol(),OP_SELL,Lots,Bid,0,0,0); Init = 0;}    //for testing
   if(OrdersTotal()==0) return;
   OpenPending();
   StopLoss();
   DeletePending();
}
void OpenPending()
{
   OrderSelect(OrdersTotal()-1, SELECT_BY_POS);
   if(OrderType()==OP_SELLSTOP) return;
   OrderSend(Symbol(),OP_SELLSTOP,Lots,OrderOpenPrice()-Distance*Point,0,0,0);
}
void StopLoss()
{
   if(OrdersTotal()<3) return;
   for(int i=0;i<OrdersTotal()-1;i++)
   {
      OrderSelect(i, SELECT_BY_POS);
      Sum = Sum + OrderOpenPrice();
   }
   SL0 = Sum/(OrdersTotal()-1);
   Sum = 0;
   if(SL0==SL1) return;
   for(i=0;i<OrdersTotal()-1;i++)
   {
      OrderSelect(i, SELECT_BY_POS);
      OrderModify(OrderTicket(), OrderOpenPrice(), SL0, OrderTakeProfit(), OrderExpiration());
   }
   SL1=SL0;
}
void DeletePending()
{
   if(OrdersTotal()==1)
   {
   OrderSelect(0, SELECT_BY_POS);
   OrderDelete(OrderTicket());
   PlaySound("ok.wav");
   }
}
Grudzień 28, 2010, 10:01:44 am -------
Gra bez TP Gra bez TP
 
Skoro nie ustawiasz TP to może pomyśl o jakimś TS - powiedzmy zgodnym z rozstawem zleceń czyli 50 pipsów - w przypadku niekorzystnego ruchu masz szansę coś urwać przed BE.

Dla piramidy składającej się z 2 jednakowych zleceń możesz w uproszczeniu założyć, że minimalne TP licząc od poziomu pierwszego zlecenia  powinno być nie mniejsze niż 3krotność rozstawu + 3krotność spread'u. W przypadku jeśli na 3 nieudane starty piramidy przypadnie 1 udany będziesz mógł liczyć przy takim TP na wyjście "na 0". Czyli w tym przypadku minimalny TP to jakieś 80 pipów od średnioważonego BE. W praktyce dla całego systemu uwzględniającego udane jak i nieudane piramidy tak ustawione TP będzie dopiero średnioważonym BE.

Dla piramidy 3zleceniowej wypada już przyjąć 5-6krotność rozstawu + 5-6krotoność spread'u dla poszukiwań minimalnego TP.

Dla uzyskania bardziej precyzyjnych parametrów można zamiast rozstawu przyjąć średnią stratę z nieudanych startów piramid *1,15, a spread (jako niewiadomą z pewnego obszaru zmienności) wyznaczyć dla bezpieczeństwa jako najczęściej występujący spread *1,5.

Temat wydzielony z:
Piramida użyta w forex konkursie BOSSY

Popularne posty