Wszystkie pytania dozwolone początkujących programistów

O jezykach programowania w platformach i nie tylko.
JAREK67
Maniak
Maniak
Posty: 2143
Rejestracja: 13 lip 2006, 11:21

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: JAREK67 »

chyba w Twoim przypadku to powinno być

Kod: Zaznacz cały

ObjectCreate("linia",OBJ_TREND,0,Time[0]-Period()*120,Bid,Time[0],Bid); 
dzięki

Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: personov »

W jaki sposób mogę uzyskać wartość ogólnego zysku lub straty tylko dla zleceń SELL lub tylko dla zleceń BUY ?
Mam otwartych np. 10 tansakcji i jeśli chciałbym uzyskać taką wartość ogólnie, to wystarczyłoby AccountProfit().
Ale ja chcialbym to rozdzielić dla BUY i dla SELL.
Jak to zrobić ?
Solą życia jest kasa.

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: Pierz Andrzej »

Kod: Zaznacz cały

double account.profit[2];
void check.profit()
{
   RefreshRates();
   account.profit[0] = 0;
   account.profit[1] = 0;
   for (int i = OrdersTotal() - 1;i >= 0;i--)
   {
      OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
      if (OrderType() <= OP_SELL) account.profit[OrderType()] += OrderProfit() + OrderSwap() + OrderCommission();
   }
}

void start()
{
   check.profit();
   Print("Profit dla zlecen kupna "    +account.profit[OP_BUY ]);
   Print("Profit dla zlecen sprzedazy "+account.profit[OP_SELL]);
}
z poważaniem
Andrzej Pierz
FOREX-SERVICE

Awatar użytkownika
personov
Pasjonat
Pasjonat
Posty: 1525
Rejestracja: 09 sie 2009, 21:27

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: personov »

Dziękuję Andzrzej. Po raz kolejny pomogło.
Solą życia jest kasa.

Awatar użytkownika
mikolaj2
Gaduła
Gaduła
Posty: 231
Rejestracja: 04 maja 2011, 14:37

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: mikolaj2 »

Poszukuję "kawałka" kodu, który umożliwiłby zwiększanie pozycji w przypadku gdy istniejąca pozycja przynosi zysk. Z góry dziękuję za pomoc...

barts
Stały bywalec
Stały bywalec
Posty: 34
Rejestracja: 05 sty 2011, 13:32

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: barts »

pytanie początkujacego:

Kod: Zaznacz cały

  int TotalOrdersCount()
{
  int result=0;
  for(int i=0;i<OrdersTotal();i++)                                 
  {
     OrderSelect(i,SELECT_BY_POS ,MODE_TRADES);
     if (OrderMagicNumber()==MagicNumber) result++;

   }
  return (result);
}
czy ta funkcja zwraca ilość otwartych juz przez dany automat pozycji?

Awatar użytkownika
Pierz Andrzej
Przyjaciel Forum
Przyjaciel Forum
Posty: 1200
Rejestracja: 02 lip 2006, 14:17

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: Pierz Andrzej »

teoretycznie tak ;)
no chyba ze w funkcji OrderSend nie masz przypisanej zmiennej MagicNumber
z poważaniem
Andrzej Pierz
FOREX-SERVICE

Awatar użytkownika
JotEs
Uczestnik
Uczestnik
Posty: 3
Rejestracja: 05 paź 2012, 10:59

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: JotEs »

Witam.
Niektórzy brokerzy (również FxPro) wprowadzili do MT4 dynamiczne lewarowanie, dostosowujące się do np. wielkości zlecenia, ilości lotów w zleceniu. Np. Jeśli składam zlecenie kupna 140 lotów EURUSD, to dla 100 lotów obowiązuje dźwignia 1:500 (przypisana do rachunku), dla pozostałych 40 – dźwignia 1:200. Z tego co wiem, zmienny lewar nie działa na rachunku Demo. Czy ktoś wie, jak to działa na rachunku realnym? Czy funkcje dostępne w MQL4, takie jak

AccountFreeMarginCheck(Symbol(), OPMod, iLots),
AccountFreeMargin(),
MarketInfo(Symbol(), MODE_MARGINREQUIRED)

zwracają prawidłowe wartości uwzględniające strukturę lewarowania? Czy jestem zmuszony zwracane wartości weryfikować, uwzględniając tabelę dźwigni z przyporządkowanymi przedziałami otwartych lotów?
Tak długo będę się przełamywać, aż się stanę całością.(Canetti)

barts
Stały bywalec
Stały bywalec
Posty: 34
Rejestracja: 05 sty 2011, 13:32

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: barts »

jakiej funkcji mogę użyć gdy chce aby po spełnieniu określonych warunków ea wstawiała na wykresie pewien znaczek, np. stop pod aktualną świeczką?
edit:
znalazlem, objectcreate.

barts
Stały bywalec
Stały bywalec
Posty: 34
Rejestracja: 05 sty 2011, 13:32

Re: Wszystkie pytania dozwolone początkujących programistów

Nieprzeczytany post autor: barts »

przepraszam ze post pod postem ale wie ktos moze jaka funkcja zwraca "miejsce" otwarcia transakcji, nie chodzi o czas ani o cenę (chociaz to juz są tak jakby współrzędne) ale o świecę w której transakcja zostaje otwarta? albo jak zdefiniować taką świece za pomocą tych 'wspolrzędnych'

ODPOWIEDZ