PDA

Zobacz pełną wersję : Wsparcie! - Jak nie zamawiać nowego zamówienia za cenę już otwartą?



Sordayh
10-17-2009 06:55, 06:55
Jak mogę sprawdzić wszystkie już otwarte ceny?
Próbowałem następujące, ale nie działa.



jeśli (warunek) .....



for (bcnt = btotal-1; bcnt gt; = 0; bcnt--)
{
OrderSelect (bcnt, SELECT_BY_POS, MODE_TRADES);
if (OrderType () lt; = OP_SELL OrderSymbol () == Symbol ())
{
if (OrderType () == OP_BUY)
{
if ((Ask gt; OrderOpenPrice () (Point * OrderDist)) || (Ask lt; OrderOpenPrice () - (Point * OrderDist)))
{
Kupować();


......



//------------------------------

kasytausch
11-03-2021 17:07, 17:07
Jak mogę sprawdzić wszystkie już otwarte ceny? Próbowałem następujące, ale nie działa. if (warunek) ..... dla (bcnt = btotal-1; bcnt gt; = 0; bcnt--) {OrderSelect (bcnt, SELECT_BY_POS, MODE_TRADES); if (OrderType () lt; = OP_SELL OrderSymbol () == Symbol ()) {if (OrderType () == OP_BUY) {if ((Zapytaj gt; OrderOpenPrice () (Point * OrderDist)) || (Ask lt ; OrderOpenPrice () - (Point * OrderDist))) {Kup (); ....../------------------------------
Masz funkcję zakupu w pętli? Prawdopodobnie chcesz przetestować pętlę i sprawdzić wszystkie zamówienia, aby sprawdzić, czy DOWOLNE są zbyt blisko. następnie sprawdź, czy wszystko jest dobre poza pętlą, a następnie kup (poza pętlą) bool tooclose = false; dla (bcnt = btotal-1; bcnt gt; = 0; bcnt--) {OrderSelect (bcnt, SELECT_BY_POS, MODE_TRADES); if (OrderType () lt; = OP_SELL OrderSymbol () == Symbol ()) {if (OrderType () == OP_BUY) {if ((Request lt; OrderOpenPrice () (Point * OrderDist)) (Ask gt; OrderOpenPrice () - (Point * OrderDist))) tooclose = true; }}}/poza pętlą jeśli (! tooclose) Buy (); else Alert (zbyt blisko, by kupić);