ninjaproject pisze: ↑06 maja 2022, 10:59
Łapanie rajdów to jest mit, bo nigdy nie wiesz, kiedy taki rajd będzie.
A z drugiej strony, nigdy też nie wiesz kiedy taki rajd się skończy.
To tylko ładnie wygląda po fakcie.
Inaczej mówiąc, jak wejdziesz w trakcie trwania takiego rajdu, to zwykle jest tak, że cena zawróci akurat wtedy, kiedy wszedłeś, tak jakby ktoś wiedział, że wszedłeś. Czasami będzie to tylko korekta i cena wróci, i poleci dalej, a częściej ty sam zrezygnujesz, bo strata będzie za duża, albo cena rzeczywiście zawróci i wtedy, jeżeli się na SL nie zgodziłeś, to masz poważny DD.
Z drugiej strony, jak dostajesz po dupie, to potem chcesz być ostrożny i łapać typowe ruchy, po trochu.
A w ten sposób nie złapiesz takiego rajdu - czyli, że konsternacja...
Łapać typowe ruchy to dobry pomysł, pod warunkiem, że będziesz cholernie konsekwentny, znajdziesz taki układ, kiedy RR będzie na twoją korzyść, i wtedy będziesz się tego bezwzględnie trzymać.
Dlatego, w moim wypadku ma sens tylko bezwzględne trzymanie się wejść zgodnie ze wskaźnikiem technicznym i bez możliwości zmiany TP i SL.
A skoro kryteria mam określone, to nie widzę miejsca dla siebie przy oglądaniu wykresu. Co najwyżej mogę pilnować, aby EA nie zwariowało, albo strategia nie zaczęła przynosić strat. Szczerze mówiąc, ja nie wierzę w przepowiadanie przyszłości na podstawie formacji. Co najwyżej jakieś proste kryterium wejścia jak dwie SMA i wtedy branie z rynku po max. kilka pipsów. Bez silenia się na łapanie tych "rajdów". To przy takiej codziennej grze.
Tak więc, na dzień dzisiejszy widzę siebie tylko w czymś takim jak EA scalping.
Ale skoro, z tego co również widzę - to nie jest takie proste, to daleka droga przede mną.
A niewykluczone, że trzeba będzie kiedyś porzucić zajęcie, jeśli okaże się że wysiłki idą na nic.
W międzyczasie naskrobałem takie coś i nie wiedzieć czemu otwiera mi pozycję od razu, nie czekając na przecięcie się średnich.
Czy wykorzystać jakiś inny sposób odwołania się do SMA z przeszłości?
Na razie zrobiłem to wg indeksu świec w iMa, a nie bardzo wiem jakie są inne możliwości:
Kod: Zaznacz cały
#property copyright "MSTFKTR"
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
input double SMA1=5;
input double SMA2=30;
input double SL=5;
input double TP=5;
input double PERIOD=1;
input double VOL=0.1;
bool L=false;
bool S=false;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
while(OrdersTotal()>=1){
bool L=false;
bool S=false;}
while(OrdersTotal()<1){
double aStopLoss = Ask - SL;
double bStopLoss = Bid + SL;
double aTakeProfit = Ask + TP;
double bTakeProfit = Bid - TP;
aStopLoss=NormalizeDouble(Ask-SL,2);
bStopLoss=NormalizeDouble(Bid+SL,2);
aTakeProfit=NormalizeDouble(Ask+TP,2);
bTakeProfit=NormalizeDouble(Bid-TP,2);
double NOW1 = iMA(NULL, PERIOD, SMA1, 0, 0, 0, 0);
double NOW2 = iMA(NULL, PERIOD, SMA2, 0, 0, 0, 0);
double PRE1 = iMA(NULL, PERIOD, SMA1, 0, 0, 0, 1);
double PRE2 = iMA(NULL, PERIOD, SMA2, 0, 0, 0, 1);
if((NOW1>NOW2)&&(PRE1<PRE2)){L=true;}
if((NOW1<NOW2)&&(PRE1>PRE2)){S=true;}
if((NOW1<NOW2)&&(PRE1>PRE2)){L=false;}
if((NOW1>NOW2)&&(PRE1<PRE2)){S=false;}
if(L=true&&Ask>NOW2){OrderSend(NULL,0,VOL,Ask,2.00,aStopLoss,aTakeProfit,NULL,0,0,clrNONE);
Print("kupiono za",Ask);}
if(S=true&&Bid<NOW2){OrderSend(NULL,1,VOL,Bid,2.00,bStopLoss,bTakeProfit,NULL,0,0,clrNONE);
Print("sprzedano za",Bid);}
//---
}}