Cytat:Niestety nigdzie nie widziałem na DM WBK ani w BOŚ taki ch kontraktów na pszenice ale napisałem maila. Na ForexBossa dostępny jest kontrakt na pszenice FWHEAT:  kliknij, aby powiększyć
|
|
Cytat:Ale dalej nie mam prawidłowo działającej wizualicaji: No to może inaczej. Czy ktoś pomoże dopisać do poniższego kodziku warunek sell (bez wizualizacji): Kod: ApplyStop(stopTypeLoss,stopModePoint,wstop); wstop = 0.05*Close;
Plot(Close,"Close",colorBlack,styleCandle);
ma1 = MA(Close,21); ma2 = MA(Close,55);
Plot(ma1,"",colorRed); Plot(ma2,"",colorBlue);
Buy = Cross(ma1,ma2);
Taki Sell ... : ...nie działa
|
|
Cytat:Exrem-em chcę wyeliminować powtórzenia sygnałów (ponowne przecięcia EMA w odpowiednim kierunku) w których dochodzi do niepotrzebnego ponownego obliczania stopa (kółka w kolorze czerwonym). images70.fotosik.pl/766/0dfa2a... Udało mi się wyeliminować powtórzenie sygnału przy pomocy Exrem: Kod:wstop = 0.05*Close;
Plot(Close,"Close",colorBlack,styleCandle);
ma1 = MA(Close,21); ma2 = MA(Close,55);
Plot(ma1,"",colorRed); Plot(ma2,"",colorBlue);
Buy = Cross(ma1,ma2);
BuyPrice = Close; Sell = 0; SellPrice = Close; SetTradeDelays(0,0,0,0);
//ApplyStop(stopTypeTrailing,stopModePoint,wartstop);
LiniaStop = Null; pozycja = 0; wartoscStop = 0;
for(i=0; i<BarCount; i++) { if(Buy[i]==1) { pozycja = 1; wartoscStop = Close[i]-wstop[i]; //TU JEST INICJALIZACJA WARTOSCI STOP jako cena close - 0.05*Close } if(pozycja == 1 AND Close[i]<=wartoscStop) { Sell[i] = 1; pozycja = 0; } //if(Close[i]-wstop[i]>wartoscStop) // wartoscStop = Close[i]-wstop[i]; if(pozycja == 1) LiniaStop[i] = wartoscStop; }
Buy = ExRem(Buy,Sell);
PlotShapes(Buy*shapeUpArrow,colorGreen,0,Low); PlotShapes(Sell*shapeHollowDownArrow,colorGreen,0,High);
Plot(LiniaStop,"",colorRed,styleDots);
SetPositionSize(1,spsShares); Ale dalej nie mam prawidłowo działającej wizualicaji: images69.fotosik.pl/767/93ae53...
|
|
Cytat:Co chcesz osiągnąć? Dokumentacja ExRem mówi, że ta funkcja usuwa sygnały. A Ty chcesz zostawić coś co Ci się usuwa. Jeśli dobrze rozumiem to wystarczy, że tam, gdzie masz "wartoscStop = 0;" wpiszesz zamiast 0 stopa i zakomentujesz linie "wartoscStop = Close[i]-wstop[i];" Exrem-em chcę wyeliminować powtórzenia sygnałów (ponowne przecięcia EMA w odpowiednim kierunku) w których dochodzi do niepotrzebnego ponownego obliczania stopa (kółka w kolorze czerwonym). images70.fotosik.pl/766/0dfa2a...
|
|
Cytat:Nie wiem czy Cie dobrze rozumiem. Ten kod co wkleiłeś ma stopa kroczącego. Tzn. że wartość stop podąża za kursem, gdy ten rośnie. W skrócie wartość stopa jest zmienną. A Ty chcesz by była stałą? Wystarczy więc ją zainicjować wartością, która Cie interesuje, a potem jej nie zmieniać (zakomentować kod który zmienia jej wartość) Wielkie dzięki kolego. O to właśnie mi chodziło. A mógłby mi kolega jeszcze pomóc w dopisaniu do tego Exrem, żeby powtórzenie buy nie powodowało skoku sztywnego stopa ?. images66.fotosik.pl/764/74db81...
|
|
W poniższym kodzie...: twojezyskinagieldzie.pl/zarzad...Kod:wstop = 0.05*Close;
Plot(Close,"Close",colorBlack,styleCandle);
ma1 = MA(Close,21); ma2 = MA(Close,55);
Plot(ma1,"",colorRed); Plot(ma2,"",colorBlue);
Buy = Cross(ma1,ma2); BuyPrice = Close; Sell = 0; SellPrice = Close; SetTradeDelays(0,0,0,0);
//ApplyStop(stopTypeTrailing,stopModePoint,wartstop);
LiniaStop = Null; pozycja = 0; wartoscStop = 0;
for(i=0; i<BarCount; i++) { if(Buy[i]==1) { pozycja = 1; wartoscStop = Close[i]-wstop[i]; } if(pozycja == 1 AND Close[i]<=wartoscStop) { Sell[i] = 1; pozycja = 0; } if(Close[i]-wstop[i]>wartoscStop) wartoscStop = Close[i]-wstop[i]; if(pozycja == 1) LiniaStop[i] = wartoscStop; }
PlotShapes(Buy*shapeUpArrow,colorGreen,0,Low); PlotShapes(Sell*shapeHollowDownArrow,colorGreen,0,High);
Plot(LiniaStop,"",colorRed,styleDots);
SetPositionSize(1,spsShares); ... Pan Rafał Wysocki w prostym systemiku stosuje zwizualizowanie trailingstopa przy pomocy pętli for. Ja chciałbym natomiast poniższy aby w/w systemik reagował nie na trailing tylko na stoploss sztywny. Wiem, że można by zastosować (ApplyStop,stopModePoint,wartstop) i usunąć całą pętle for, ale wtedy owszem system odpowiedznio działał, ale bez wizualizacji stopa na wykresie. Kombinuję, że aby w tym kodzie uzyskać należało by zamienieć..: Kod:LiniaStop[i] = wartoscStop; ..na coś w rodzaju Kod:LiniaStop[i] = cena - wstop po której została zawarta ostania transakcja. ... ale po pierwsze nie wiem czy da się coś takiego zrobić, a po drugie nie wiem jak to zapisać.
|
|