Come codificare? - pagina 229

 
 

Semplice sistema redditizio ha bisogno di un programmatore EA!!!!!

Ciao comunità,

Dato che non mi è permesso aprire un nuovo thread qui, devo postare questa strategia redditizia con il tasto POST REPLY in questo forum per chiedere a qualsiasi

programmatore di fare un EA per questo sistema

Sarebbe bello se qualcuno potesse fare un EA dall'indicatore con le regole come segue

Faccio trading in un timeframe H4 (QUALSIASI valuta volatile va bene!!!!)

Se la linea era verde (trend rialzista) ora sta diventando rossa (trend ribassista)

==> Chiudi l'ordine di acquisto (se ancora aperto)

==> Vendi con Stoploss dall'ultimo massimo delle candele +10/20 Pip

se la linea era rossa (downtrend) ora va in verde (uptrend)

==> Chiudere l'ordine di vendita (se ancora aperto)

==> Comprare con Stoploss dalle ultime candele basse -10/20 Pips

Prendo il mio segnale SOLO dopo il completamento della candela corrente!!!

(perché la linea cambia colore diverse volte prima che la candela corrente sia completa)

Dopo aver inviato il mio ordine (vendere o comprare) aspetto che la prossima candela si chiuda poi imposto il mio Stoploss a Breakeven e lascio che il trade vada avanti fino a quando la tendenza

(l'ordine viene chiuso automaticamente dalle regole - vedi sopra) o se vedo che è adatto al mio obiettivo di profitto chiudo l'ordine manualmente e prendo il mio

profitto...

Potresti impostare un Takeprofit di diciamo 50-100 pip (dipende dalla valuta) o un Trailing se non vuoi che il trade chiuda in pareggio...

Spero che questo aiuti chiunque a fare un EA per questo sistema redditizio...? Sarebbe fantastico se questa strategia potesse funzionare con il pilota automatico (EA) quando sono al

lavoro, così prenderebbe più pips dal mercato...Grazie

Kevin Flynn

Dato che l'allegato sembra essere troppo grande per essere messo qui, ecco il link per il download del sistema komplett che include modelli, indicatori e immagine delle regole con stoploss, ecc. (basta copiare il link di download nel vostro browser e sostituire hxxp con http !!!)

hxxp://remixshare.com/dl/p6pdb/LineOfDestiny komplett.zip

 

IndexArrow ha attivato ObjectArrow

Ciao!

Sono un novellino e chiedo aiuto per questo problema:

Ho bisogno che se SetIndexArrow() si innesca così anche deve

ObjectCreate(),ObjectSet()!

È possibile?

Saluti.

Rolf

27.03.2010

 

Linee orizzontali

Ciao

Sto cercando un indicatore che disegni linee con l'input dell'utente xInterval intorno al prezzo corrente

Per esempio mostrato nell'immagine il prezzo corrente è 1.3414 e l'intervallo è 10 pips quindi la linea superiore dovrebbe @ 1.3420 & 1.3430, e la linea inferiore dovrebbe essere @ 1.3410 & 1.3400

e se inseriamo 20 pip la linea dovrebbe essere @ 1.3430 & 1.3450, linea in basso @ 1.3400 & 1.3380

un semplice pezzo di codice che mostrerà la logica come fare questo sarà buono

Grazie

Arshed.

File:
 

Ho bisogno di aiuto su afl a mql4!!! per favore aiutatemi

Ho bisogno di formule mql4 da questo codice afl! Per favore aiutatemi

_SECTION_BEGIN("Terra-2");

VAR2=(Alto+Basso+(Chiusura)*(2))/(4);

B = ((EMA((VAR2-LLV(VAR2,15))/(HHV(Low,15)-LLV(VAR2,15)),2))*(38));

Plot(b, "", 4, 1+4);

bot1 = ((((-1))*(EMA((VAR2-LLV(VAR2,15))/(HHV(Low,15)-LLV(VAR2,15)),2))+0.01)*(38));

Plot(bot1, "", 4, 1+4);

VAR22=((Close-LLV(Low,10))/(HHV(High,10)-LLV(Low,10)))*(100);

VAR33=EMA(VAR22,10);

VAR44=EMA(VAR33,10);

VAR55=(3)*(VAR33)-(2)*(VAR44);

VAR66=EMA(VAR55,5);

BridgeT = (EMA(VAR66,1));

Plot(bridget, "", IIf(bridget > Ref(bridget,-1),colorYellow,colorBlue), 1+4);

Plot(-bridget, "", IIf(bridget > Ref(bridget,-1),colorYellow,colorBlue), 1+4);

tendenza = (5)*(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5))-

(3)*(EMA(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5),3))-

EMA(EMA(EMA(((Close-LLV(Low,27))/(HHV(High,27)-LLV(Low,27)))*(100),5),3),2);

Buy1 = Cross(trend,5);

PlotShapes( IIf( Buy1, shapeSmallSquare, shapeNone ), colorGreen, layer = 0, yposition = 0, offset = 3 );

PlotShapes( IIf( Buy1, shapeSmallSquare, shapeNone ),colorGreen, layer = 0, yposition = 0, offset = -4 );

VARA1=((Close>=Ref(Close,-1)) AND (Ref(Close,-1)>=Ref(Close,-2)) AND (Ref(Close,-1)<=Ref(Close,-3))

E (Rif(Chiusura,-2)Rif(Chiusura,-2)) OR (Ref(Close,-4)<=Ref(Close,-2))

E (Ref(Close,-5)>=Ref(Close,-3)) OR (Close>=Ref(Close,-1)) E (Ref(Close,-1)<=Ref(Close,-2))

E (Chiusura>=Rif(Chiusura,-2)) E ((Ref(Close,-3)>Ref(Close,-1)) OR (Ref(Close,-3)<=Ref(Close,-1))

AND (Ref(Close,-4)>=Ref(Close,-2))));

VARA2=LLV(Basso,5);

VARA3=HHV(Alto,5);

VARA4=EMA(((Close-VARA2)/(VARA3-VARA2))*(100),4);

VARA5=EMA((0.66699999)*(Ref(VARA4,-1))+(0.333)*(VARA4),2);

VARA6=(VARA5<24) AND (Open<MA(Close,20));

Buy2 =IIf(VARA1 AND (VARA6),30,0);

Plot(Buy2, "", 8,2+4);

Plot(-Buy2, "", 8,2+4);

_N(Title = StrFormat("\\NOME}}} | {{DATE}} | {{VALORI}}")+EncodeColor(colorBrightGreen)+WriteIf(Buy2==30, "BuySignal-A","" )+EncodeColor(colorBrightGreen)+WriteIf(Buy1==1," | BuySignal-B","");

_SECTION_BEGIN("Earth-3");

n = Param("Periodi", 14, 5, 25, 1 );

var6=(2*Close+High+Low)/4;

var7=LLV(L,n);

var8=HHV(H,n);

var9=EMA((var6-var7)/(var8-var7)*100,5);

varA=EMA(0.333*Ref(var9,-1)+0.667*var9,3);

UP=Var9;

DOWN=Vara;

barcolor2=

IIf( (Ref(up,-1)>Ref(down,-1) AND Ref(up,-1)>up AND up>down )

OR (Ref(up,-1)<Ref(down,-1) AND Ref(up,-1)<up AND up<down )

, coloreBlu,

IIf(up>down,5,4));

Plot(0,"",barcolor2,styleLine);

_SECTION_END();

_SECTION_BEGIN("Terra-1");

EB1 = Close > Ref(Close, -1) AND Ref(Close, -1) > Ref(Close, -2) AND Ref(Close, -1) < Ref(Close, -3) AND IIf(Ref(Close, -3) < Ref(Close, -4), 1, IIf(Ref(Close, -4) < Ref(Close, -5),Ref(Close, -1) < Ref(Close, -4) OR( Ref(Close, -2) = Ref(Close, -5) ),IIf(Ref(Close, -5) < Ref(Close, -6), 1,Ref(Close, -6) < Ref(Close, -7))));

ES1 = Close < Ref(Close, -1) AND Ref(Close, -1) Ref(Close, -3) AND IIf(Ref(Close, -3) > Ref(Close, -4), 1, IIf(Ref(Close, -4) > Ref(Close, -5),Ref(Close, -1) > Ref(Close, -4) OR( Ref(Close, -2) > Ref(Close, -4) AND Ref(Close, -3) Ref(Close, -6), 1,Ref(Close, -6) > Ref(Close, -7))));

PlotShapes( IIf( ES1, shapeHollowSmallSquare, shapeNone ), colorOrange, layer = 0, 0, 0 );

PlotShapes( IIf( EB1, shapeUpArrow, shapeNone ), colorBlack, layer = 0, 0, 0 );

_SECTION_END();

_SECTION_BEGIN("Exploration");

LastBar = Cum( 1 ) == LastValue( Cum( 1 ) );

Filtro = LastBar;

pfrom = Param("Prezzo Da", 0, 0, 1000, 0.5 );

pto = Param("Prezzo a", 1000, 0, 1000, 0.5 );

Minv = Param("Volume minimo (K)", 500, 0, 1000, 50);

dd = Param("Cifre decimali", 1.2, 1, 1.7, 0.1 );

EB21=Compra1;

EB22=Compra2;

//Filtro = Buy AND C>pfrom AND C1000*Minv;

Colore = IIf(Close>Open, coloreVerde, coloreRosso);

bcolor = IIf(Buy1 OR Buy2, colorGreen, 1);

AddTextColumn(WriteIf(EB1, "Buy",WriteIf(ES1, "Sell","")), "Earth-1",colorDefault,-1);

AddTextColumn(WriteIf(Buy1==1, "Buy-A"," "), "Terra-2a",colorDefault,-1);

AddTextColumn(WriteIf(Buy2==30, "Buy-B"," "), "Terra-2b",colorDefault,-1);

AddTextColumn(WriteIf(bridget > Ref(bridget,-1) AND Ref(bridget,-1)<Ref(bridget,-2), "Buy",WriteIf(bridget Ref(bridget,-2), "Sell","")), "Terra-2c",colorDefault,-1);

AddTextColumn(WriteIf(barcolor2==colorBlue, "Modarate",WriteIf(barcolor2==4, "Buy",WriteIf(barcolor2==5, "Sell","")), "Earth-3",colorDefault,-1);

//AddColumn(Buy, "Buy" , 1.1, bcolor);

//AddColumn(O, "Open", dd, textColor = Color);

//AddColumn(C, "Close", dd, textColor = Color);

//AddColumn(V, "Volume", 1, textColor = Color);

//AddTextColumn(FullName(), "Nome");

 

Ciao,

Forse dovrai pagare qualcuno per codificarlo, mi ci vorranno mesi solo per capire cosa sta facendo e non ho tempo per questo. Sicuramente fa delle belle immagini però.

Visto che usa il volume, farei attenzione ad usare il volume del broker MT4 perché differiscono notevolmente tra i broker.

Buona fortuna con questo.

Swagman

 

conteggio dei parametri errato

perché questo codice dà un errore di conteggio dei parametri sbagliato:

for(int i = 0;i < 3;i++)

{

kline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_MAIN, i);

dline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_SIGNAL, i);

}

 

TimeFrame = Periodo() = Parametro extra

forextrend:
perché questo codice dà l'errore di conteggio del parametro sbagliato:

for(int i = 0;i < 3;i++)

{

kline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_MAIN, i);

dline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_SIGNAL, i);

}

Ciao Forextrend,

Il problema potrebbe essere con TimeFrame1 e Period() - impostano il TF per l'indicatore.

L'iStochastic può usare uno dei due, ma non entrambi?

Prova a rimuovere uno o l'altro - questo potrebbe essere il parametro 'extra'.

Spero che questo aiuti,

Robert

 
forextrend:
perché questo codice dà l'errore di conteggio dei parametri sbagliati:

for(int i = 0;i < 3;i++)

{

kline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_MAIN, i);

dline = iStochastic(NULL,TimeFrame1, Period(), 4, 3, 3, MODE_SMA, 1, MODE_SIGNAL, i);

}

Prova questo:

iStochastic( Symbol(), 0, StochK, StochD, StochSlowing, MODE_SMA, 0, MODE_MAIN, 0 );

  • Symbol() è per la coppia di valute che si vuole calcolare
  • 0 è per il timeframe (qui corrente)
  • poi ci sono i parametri K/D/Slowing
  • MODE_SMA - solo modalità MA
  • 0 - campo param (hi/lo o close/close)
  • MODE_MAIN è la selezione della linea stocastica principale (invece di quella di segnale)
  • 0 - significa candela corrente

Hai inserito iStochastic( ..., Period(), 4, 3, 3 ) che è probabilmente la fonte del problema. Tutti gli altri parametri sono ok, solo che sembra che tu abbia troppi parametri qui.

 

Halp!!!!!!!!!!

Ho provato praticamente ogni possibile combinazione del maledetto difetto della parentesi che sto ottenendo cercando di compilare. L'ho guardato per molte ore ma non ho avuto fortuna nel risolverlo. L'ho inchiodato a una sezione di codice che sta rovinando lo script. Qualcuno mi consiglia su ciò che è sbagliato (a parte il fatto che sono un idiota).

void ScanForClosure ()

{

int cash = OrderProfit() + OrderSwap() + OrderCommission()

int MacdCurrent, MacdPrevious, SignalCurrent;

int SignalPrevious, MaCurrent, MaPrevious;

int total2 = OrdersTotal();

int numords2 = 0;

bool type = false;

int trd2 = 0;

MacdCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,0);

MacdPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_MAIN,1);

SignalCurrent=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,0);

SignalPrevious=iMACD(NULL,0,12,26,9,PRICE_CLOSE,MODE_SIGNAL,1);

MaCurrent=iMA(NULL,0,MATrendPeriod,0,MODE_EMA,PRICE_CLOSE,0);

MaPrevious=iMA(NULL,0,MATrendPeriod,0,MODE_EMA,PRICE_CLOSE,1);

ArrayResize(lastOrders,5);

ArrayInitialize(lastOrders,0);

//

for(int cnt=0; cnt<totale2; cnt++)

{

OrderSelect(cnt, SELECT_BY_POS);

if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic) ;

{

se ((OrderType()==OP_BUY)&&

(MacdCurrent>0)&&

(MacdCurrent<SignalCurrent)&&

(cassa > 0)&&

(MacdPrevious>SignalPrevious) && MacdCurrent>(MACDCloseLevel*Point));

{

CloseOrder(1);

}

if ((OrderType()==OP_SELL)&&

(cash > 0)&& (MacdCurrent<0 ) &&

(MacdCurrent>SignalCurrent)&&

(MacdPrecedente<SegnalePrecedente)&&

(MathAbs(MacdCurrent))>(MACDCloseLevel*Point));

{

CloseOrder(2);

}

}

}

}