Como codificar? - página 195

 
kipper:
O que está acontecendo é que o programa faz tudo o que se espera quando o número é inferior a 15, ele permanece AZUL, não tenho certeza do que fiz de errado, espero que alguém possa lançar alguma luz para mim.

Aqui está o código que eu tenho 4 as cores

Tente isto:

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" é a mudança da barra atual:

0 - para barra de corrente (aberta)

1 - barra anterior ("fechada").

grstaka:
Obrigado!!!!O que significa a barra? Isso é +1 -1 Bar?
 

Obrigado por sua ajuda Roger, agradeço

 

Ajuda na criação de um indicador ob/os

Estou procurando alguém com habilidades de codificação para me ajudar a criar um indicador de sobre-compra/sobre-venda que pegaria a diferença de preço de 2 pares e mostraria o resultado. Deve ser bastante direto, mas então não sou um programador, então não tenho exatamente certeza. Alguém interessado em tentar isto para mim? Se sim, me avise ou se alguém já souber de algum que também seria ótimo. Já procurei, mas não vi nada que faça isso.

 

Pips até a chamada de margem

Alguém sabe uma maneira de descobrir o número de pips que um pedido pode ter até que se receba uma margem chamada sobre a posição? Assumindo apenas uma posição aberta de cada vez.

Tenho certeza de que há uma maneira, mas ainda não consegui descobrir.

 

Sinais de alerta sintonizados para o comércio - Como fazer isso ?

Hi,

Tenho um indicador que exibe setas comerciais, azul para compra e cor-de-rosa para venda. Preciso de um pedido de compra e venda real junto com um sinal sonoro. Portanto, há apenas 1 troca para um par o tempo todo e a troca atual fecha quando a flecha oposta se move e também uma nova troca de acordo com a flecha . Onde e como eu modifico o código. Anexando o código aqui. Obrigado por sua ajuda.

/*

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

| |

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

*/

#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);

}

 

Parece ser um simples indicador cruzado MA. Verifique o link no meu sig para um tutorial gratuito que lhe permitirá construir um indicador cruzado de MA EA.

Boa sorte.

Lux

 

Olá seniore o EA pode fazer o robô... modelo também martiangle

1.Looping -> Ajuste o robô quantas vezes o caminho

2.Primeiro, Encomendar Auto -> Comprar ou vender com base na tendência do pequeno mercado naquele momento, depois, comprar ou vender automaticamente ao lado da última compra ou venda.

3.Lote inicial -> lote definido

4.Range -> A distância entre a posição encomendada, uma com a outra posição

5.Rangeincrease--> desenvolvimento da distância entre a posição da outra com as outras posições de acordo com o crescimento múltiplo

6.Start level increase -> dibaris order to enable the function parameters rangeincrease

7.Multiplicador -> lote de multiplicação na próxima ordem

8.TPmoney -> fechar todos os pedidos quando se alcança o lucro do dinheiro naquele momento.

obrigado

 

Ajude a EA

mirak:
Olá seniore o EA pode fazer o robô... modelo também martiangle

1.Looping -> Ajuste o robô quantas vezes o caminho

2.Primeiro, Encomendar Auto -> Comprar ou vender com base na tendência do pequeno mercado naquele momento, depois, comprar ou vender automaticamente ao lado da última compra ou venda.

3.Lote inicial -> lote definido

4.Range -> A distância entre a posição encomendada, uma com a outra posição

5.Rangeincrease--> desenvolvimento da distância entre a posição da outra com as outras posições de acordo com o crescimento múltiplo

6.Start level increase -> dibaris order to enable the function parameters rangeincrease

7.Multiplicador -> lote de multiplicação na próxima ordem

8.TPmoney -> fechar todos os pedidos quando se alcança o lucro do dinheiro naquele momento.

obrigado

Uppp plsss

 

iTime

aqui está o código para que o horário de início de trabalho da Bar no MTF

GetTime =(iTime(Símbolo(),60,i)); seu OK

como conseguimos o tempo final do Bar ?

Obrigado