Come codificare? - pagina 195

 
kipper:
Quello che sta succedendo è che il programma fa tutto, ma quando la cifra è inferiore a 15 rimane BLU, non so cosa ho fatto di sbagliato, spero che qualcuno possa fare un po' di luce per me.

Ecco il codice che ho 4 colori

Prova questo:

if(sym_1 85) color_1 = Red; else color_1 = Blue;

if(sym_2 85) color_2 = Red; else color_2 = Blue;

if(sym_3 85) color_3 = Red; else color_3 = Blue;

if(sym_4 85) color_4 = Red; else color_4 = Blue;
 

"bar" è lo spostamento dalla barra attuale:

0 - per la barra corrente (aperta)

1 - barra precedente ("chiusa").

grstaka:
Grazie!!!! Cosa significa la barra? È +1 -1 barra?
 

Grazie per il tuo aiuto Roger, lo apprezzo

 

Aiuto nella creazione di un indicatore ob/os

Sto cercando qualcuno con capacità di codifica per aiutarmi a creare un indicatore over-bought/over-sold che prenda la differenza di prezzo di 2 coppie e mostri il risultato. Dovrebbe essere abbastanza semplice ma io non sono un programmatore quindi non sono esattamente sicuro. Qualcuno è interessato a provare questo per me? Se è così fatemelo sapere o se qualcuno ne conosce già uno sarebbe fantastico. Ho cercato ma non ho visto nulla che possa fare questo.

 

Pip fino alla chiamata di margine

Qualcuno conosce un modo per calcolare il numero di pip che un ordine può fare fino a quando non viene chiamato il margine sulla posizione? Supponendo una sola posizione aperta alla volta.

Sono sicuro che c'è un modo, ma non sono riuscito a capirlo.

 

Segnali d'allarme sintonizzati sul commercio - Come fare?

Ciao, ho un indicatore che mostra le frecce di trading, blu per comprare e rosa per vendere,

Ho un indicatore che visualizza le frecce di trading, blu per acquistare e rosa per vendere. Ho bisogno di un effettivo ordine di acquisto e di vendita insieme al segnale sonoro. Quindi c'è solo 1 commercio per una coppia in ogni momento e il commercio corrente si chiude quando la freccia opposta comes e anche un nuovo commercio come da freccia. Dove e come posso modificare il codice. Allegando il codice qui con. Grazie per il vostro aiuto.

/*

+------------------------------------------------------------------+

| |

+------------------------------------------------------------------+

*/

#property copyright "Copyright)"

#property link "http://"

#property indicator_chart_window

#property indicator_buffers 2

#property indicator_color1 DodgerBlue

#property indicator_width1 3

#property indicator_color2 Magenta

#property indicator_width2 3

extern string note1 = "First Moving Average";

extern int MA1 = 10;

extern string note2 = "0=sma, 1=ema, 2=smma, 3=lwma";

extern int MA1Mode = 0; //0=sma, 1=ema, 2=smma, 3=lwma

extern string note3 = "--------------------------------------------";

extern string note4 = "Second Moving Average";

extern int MA2 = 50;

extern string note5 = "0=sma, 1=ema, 2=smma, 3=lwma";

extern int MA2Mode = 0; //0=sma, 1=ema, 2=smma, 3=lwma

extern string note6 = "--------------------------------------------";

extern string note7 = "Arrow Type";

extern string note8 = "0=Thick, 1=Thin, 2=Hollow, 3=Round";

extern string note9 = "4=Fractal, 5=Diagonal Thin";

extern string note10 = "6=Diagonal Thick, 7=Diagonal Hollow";

extern string note11 = "8=Thumb, 9=Finger";

extern int ArrowType=2;

extern string note12 = "--------------------------------------------";

extern string note13 = "turn on Alert = true; turn off = false";

extern bool AlertOn = true;

extern string note14 = "--------------------------------------------";

extern string note15 = "send Email Alert = true; turn off = false";

extern bool SendAnEmail=false;

double CrossUp[];

double CrossDown[];

string AlertPrefix, MA1short_name, MA2short_name;

string GetTimeFrameStr() {

switch(Period())

{

case 1 : string TimeFrameStr="M1"; break;

case 5 : TimeFrameStr="M5"; break;

case 15 : TimeFrameStr="M15"; break;

case 30 : TimeFrameStr="M30"; break;

case 60 : TimeFrameStr="H1"; break;

case 240 : TimeFrameStr="H4"; break;

case 1440 : TimeFrameStr="D1"; break;

case 10080 : TimeFrameStr="W1"; break;

case 43200 : TimeFrameStr="MN1"; break;

default : TimeFrameStr=Period();

}

return (TimeFrameStr);

}

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

int init()

{

//---- indicators

if (ArrowType == 0) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 233);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 234);

}

else if (ArrowType == 1) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 225);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 226);

}

else if (ArrowType == 2) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 241);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 242);

}

else if (ArrowType == 3) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 221);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 222);

}

else if (ArrowType == 4) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 217);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 218);

}

else if (ArrowType == 5) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 228);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 230);

}

else if (ArrowType == 6) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 236);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 238);

}

else if (ArrowType == 7) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 246);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 248);

}

else if (ArrowType == 8) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 67);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 68);

}

else if (ArrowType == 9) {

SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(0, 71);

SetIndexStyle(1,DRAW_ARROW);

SetIndexArrow(1, 72);

}

SetIndexBuffer(0, CrossUp);

SetIndexBuffer(1, CrossDown);

//---- indicator short name

switch(MA1Mode)

{

case 1 : MA1short_name="EMA"; break;

case 2 : MA1short_name="SMMA"; break;

case 3 : MA1short_name="LWMA"; break;

default :

MA1Mode=0;

MA1short_name="SMA";

}

switch(MA2Mode)

{

case 1 : MA2short_name="EMA"; break;

case 2 : MA2short_name="SMMA"; break;

case 3 : MA2short_name="LWMA"; break;

default :

MA2Mode=0;

MA2short_name="SMA";

}

AlertPrefix=Symbol()+" ("+GetTimeFrameStr()+"): ";

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//----

//----

return(0);

}

//+------------------------------------------------------------------+

bool NewBar()

{

static datetime lastbar;

datetime curbar = Time[0];

if(lastbar!=curbar)

{

lastbar=curbar;

return (true);

}

else

{

return(false);

}

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start() {

int limit, i, counter;

double MA1now, MA2now, MA1previous, MA2previous, MA1after, MA2after;

double Range, AvgRange;

int counted_bars=IndicatorCounted();

//---- check for possible errors

if(counted_bars<0) return(-1);

//---- last counted bar will be recounted

if(counted_bars>0) counted_bars--;

limit=Bars-counted_bars;

for(i = 0; i <= limit; i++) {

counter=i;

Range=0;

AvgRange=0;

for (counter=i ;counter<=i+9;counter++)

{

AvgRange=AvgRange+MathAbs(High[counter]-Low[counter]);

}

Range=AvgRange/10;

MA1now = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i);

MA1previous = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i+1);

MA1after = iMA(NULL, 0, MA1, 0, MA1Mode, PRICE_CLOSE, i-1);

MA2now = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i);

MA2previous = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i+1);

MA2after = iMA(NULL, 0, MA2, 0, MA2Mode, PRICE_CLOSE, i-1);

if ((MA1now > MA2now) && (MA1previous MA2after)) {

CrossUp = Low - Range*1.5;

if ( NewBar())

{

if (AlertOn) {

Alert(AlertPrefix+MA1short_name+" ("+MA1+") "+"crosses UP " + MA2short_name+" ("+MA2+")");

}

if (SendAnEmail) {

SendMail(AlertPrefix,MA1short_name+" ("+MA1+") "+"crosses UP " + MA2short_name+" ("+MA2+")");

}

}

}

else if ((MA1now MA2previous) && (MA1after < MA2after)) {

CrossDown = High + Range*1.5;

if (NewBar())

{

if (AlertOn) {

Alert(AlertPrefix+MA1short_name+" ("+MA1+") "+"crosses DOWN " + MA2short_name+" ("+MA2+")");

}

if (SendAnEmail) {

SendMail(AlertPrefix,MA1short_name+" ("+MA1+") "+"crosses DOWN " + MA2short_name+" ("+MA2+")");

}

}

}

}

return(0);

}

 

Sembra un semplice indicatore MA cross. Controlla il link nel mio sig per un tutorial gratuito che ti permetterà di costruire un MA cross EA.

Buona fortuna

Lux

 

Ciao seniore l'EA può fare il robot... modello anche martiangle

1.Looping -> Impostare il robot quante volte il giro

2.First Order Auto -> Ordina comprare o vendere in base alla tendenza del piccolo mercato in quel momento, poi auto op accanto all'ultimo comprare o vendere.

3.Start lotto -> impostare lotto

4.Range -> La distanza tra la posizione che si ordina uno con l'altra posizione

5.Rangeincrease -> sviluppo della distanza tra la posizione dell'altro con le altre posizioni in accordo con la crescita multipla

6.Inizio aumento livello -> dibaris ordine per attivare i parametri di funzione rangeincrease

7.Moltiplicatore -> lotto di moltiplicazione in ordine successivo

8.TPmoney -> chiudere tutti gli ordini quando raggiunto profitto del denaro in quel momento.

grazie

 

Aiuto EA

mirak:
Ciao seniore l'EA può fare il robot... modello anche martiangle

1.Looping -> Impostare il robot quante volte il giro

2.First Order Auto -> Ordina comprare o vendere in base alla tendenza del piccolo mercato in quel momento, poi auto op accanto all'ultimo acquisto o vendita.

3.Start lotto -> impostare lotto

4.Range -> La distanza tra la posizione che si ordina uno con l'altra posizione

5.Rangeincrease -> sviluppo della distanza tra la posizione dell'altro con le altre posizioni in accordo con la crescita multipla

6.Inizio aumento livello -> dibaris ordine per attivare i parametri di funzione rangeincrease

7.Moltiplicatore -> lotto di moltiplicazione in ordine successivo

8.TPmoney -> chiudere tutti gli ordini quando raggiunto profitto del denaro in quel momento.

grazie

Uppp plsss

 

iTime

ecco il codice per ottenere il tempo di inizio della barra che funziona su MTF

GetTime =(iTime(Symbol(),60,i)); il suo OK

come otteniamo l'ora di fine della barra?

Grazie