Estou curioso para saber se alguém com experiência em programação pode olhar para este e-mail indior para mim. Me notifica via e-mail e seta quando ir longo. No entanto, para ir curto eu recebo a seta, mas nenhum som ou e-mail. Qualquer ajuda seria apreciada.


#property copyright Copyright © 2005, Jason Robinson (jnrtrading)
link #property
http://www.jnrtrading.co.uk
#property indior_chart_window
#property indior_buffers 2
#property indior_color1 DodgerBlue
#property indior_color2 Vermelho
bool externo SoundON = verdadeiro;
bool externo EmailON = true;
extern int FastMA_Mode = 1;/0 = sma, 1 = ema, 2 = smma, 3 = lwma, 4 = lsma
extern int FastMA_Period = 5;
extern int FastPriceMode = 0;/0 = fechado, 1 = aberto, 2 = alto, 3 = baixo, 4 = mediano (alto baixo)2, 5 = típico (alto baixo próximo)3, 6 = ponderada (alta baixa fechar fechar)4
extern int SlowMA_Mode = 1;/0 = sma, 1 = ema, 2 = smma, 3 = lwma, 4 = lsma
extern int SlowMA_Period = 13;
extern int SlowPriceMode = 0;/0 = fechado, 1 = aberto, 2 = alto, 3 = baixo, 4 = mediano (alto baixo)2, 5 = típico (alto baixo próximo)3, 6 = ponderada (alta baixa fechar fechar)4
CrossUp duplo [];
double CrossDown [];
int flagval1 = 0;
int flagval2 = 0;
// ----------------------------------------------- -------------------
//| Função de inicialização interna personalizada |
// ----------------------------------------------- -------------------
int init ()
{
//- dentro de casa
SetIndexStyle (0, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (0, 233);
SetIndexBuffer (0, CrossUp);
SetIndexStyle (1, DRAW_ARROW, EMPTY, 1);
SetIndexArrow (1, 234);
SetIndexBuffer (1, CrossDown);
GlobalVariableSet (AlertTime Symbol () Período (), CurTime ());
GlobalVariableSet (SignalType Symbol () Período (), OP_SELLSTOP);
//GlobalVariableSet (LastAlert Symbol () Período (), 0);
//----
retorno (0);
}
// ----------------------------------------------- -------------------
//| Função de desinicialização interna personalizada |
// ----------------------------------------------- -------------------
int deinit ()
{
//----
GlobalVariableDel (AlertTime Symbol () Período ());
GlobalVariableDel (SignalType Symbol () Período ());
//GlobalVariableDel (LastAlert Symbol () Período ());
//----
retorno (0);
}
// ----------------------------------------------- -------------------
//| LSMA com PriceMode |
//| PrMode 0 = fechado, 1 = aberto, 2 = alto, 3 = baixo, 4 = mediano (alto baixo)2, |
//| 5 = típico (alto baixo próximo)3, 6 = ponderado (alto baixo próximo próximo)4 |
// ----------------------------------------------- -------------------
LSMA duplo (int Rperiod, int prMode, int shift)
{
int i;
soma dupla, pr;
comprimento int;
double lengthvar;
tmp duplo;
peso duplo;
comprimento = Rperiod;

soma = 0;
para (i = comprimento; i gt; = 1; i--)
{
lengthvar = comprimento 1;
lengthvar= 3;
tmp = 0;
interruptor (prMode)
{
caso 0: pr = Fechar [comprimento-i deslocamento];
caso 1: pr = Open [length-i shift];
caso 2: pr = alto [comprimento-i desvio];
caso 3: pr = baixo [comprimento-i desvio];
caso 4: pr = (Alto [comprimento-i deslocamento] Baixo [comprimento-i deslocamento])2;
caso 5: pr = (Alto [comprimento-i deslocamento] Baixo [comprimento-i deslocamento] Fechar [comprimento-i deslocamento])3;
caso 6: pr = (Alto [comprimento-i deslocamento] Baixo [comprimento-i deslocamento] Fechar [comprimento-i deslocamento] Fechar [comprimento-i deslocamento])4;
}
tmp = (i - lengthvar) * pr;
soma = tmp;
}
wt = soma * 6(comprimento * (comprimento 1));

retorno (wt);
}

// ----------------------------------------------- -------------------
//| Função de iteração interior personalizada |
// ----------------------------------------------- -------------------
int start () {
int limite, i, contador;
duplo tmp = 0;
double fastMAnow, slowMAnow, fastMAprevious, slowMAprevious;
faixa dupla, AvgRange;
int counted_bars = IndiorCounted ();
//---- verificar possíveis erros
if (counted_barslt; 0) retorno (-1);
//---- última barra contada será recontada
if (counted_barsgt; 0) counted_bars--;
limit = barras-counted_bars;

para (i = 0; i lt; = limite; i ) {

contador = i;
Faixa = 0;
AvgRange = 0;
para (counter = i; counterlt; = i 9; counter )
{
AvgRange = AvgRange MathAbs (Alto [contador] - Baixo [contador]);
}
Intervalo = AvgRange10;

if (FastMA_Mode == 4)
{
fastMAnow = LSMA (FastMA_Period, FastPriceMode, i);
fastMAprevious = LSMA (FastMA_Period, FastPriceMode, i 1);

}
outro
{
fastMAnow = iMA (NULL, 0, FastMA_Period, 0, FastMA_Mode, FastPriceMode, i);
fastMAprevious = iMA (NULL, 0, FastMA_Period, 0, FastMA_Mode, FastPriceMode, i 1);
}
if (SlowMA_Mode == 4)
{
slowMAnow = LSMA (SlowMA_Period, SlowPriceMode, i);
slowMAprevious = LSMA (SlowMA_Period, SlowPriceMode, i 1);
}
outro
{
slowMAnow = iMA (NULL, 0, SlowMA_Period, 0, SlowMA_Mode, SlowPriceMode, i);
slowMAprevious = iMA (NULL, 0, SlowMA_Period, 0, SlowMA_Mode, SlowPriceMode, i 1);
}

if ((fastMAnow gt; slowMAnow) (fastMAprevious lt; slowMAprevious))
{
if (i == 1 flagval1 == 0) {flagval1 = 1; flagval2 = 0; }
CrossUp [i] = Baixo [i] - Faixa * 0,75;
}
else if ((fastMAnow lt; slowMAnow) (fastMAprevious gt; slowMAprevious))
{
if (i == 1 flagval2 == 0) {flagval2 = 1; flagval1 = 0; }
CrossDown [i] = Alto [i] Intervalo * 0,75;
}
}

if (flagval1 == 1CurTime () gt; GlobalVariableGet (AlertTime Símbolo () Período ()) GlobalVariableGet (SignalType Symbol () Período ())! = OP_BUY)
{
//if (GlobalVariableGet (LastAlert Symbol () Período ()) lt; 0,5)
//{
if (SoundON) Alert (sinal BUY em Perguntar =, Perguntar, \ n Bid =, Bid, \ n Hora =, TimeToStr (CurTime (), TIME_DATE), HoraHora (CurTime ()),:, TempoMinuto (CurTime () ), \ n Symbol =, Symbol (), Period =, Period ());
if (EmailON) SendMail (sinal de compra, sinal de compra em Ask = DoubleToStr (Ask, 4) , Bid = DoubleToStr (lance, 4) , data = TimeToStr (CurTime (), TIME_DATE) TimeHour ( CurTime ()) : TimeMinute (CurTime ()) Símbolo = Símbolo () Período = Período ());
//}
tmp = CurTime () (Período () - MathMod (Minuto (), Período ())) * 60;
GlobalVariableSet (AlertTime Symbol () Período (), tmp);
GlobalVariableSet (SignalType Symbol () Período (), OP_SELL);
//GlobalVariableSet (LastAlert Symbol () Período (), 1);
}

if (flagval2 == 1CurTime () gt; GlobalVariableGet (AlertTime Símbolo () Período ()) GlobalVariableGet (SignalType Symbol () Período ())! = OP_SELL) {
//if (GlobalVariableGet (LastAlert Symbol () Período ()) gt; -0,5)
//{
if (SoundON) Alert (sinal SELL em Perguntar =, Perguntar, \ n Bid =, Bid, \ n Data =, TimeToStr (CurTime (), TIME_DATE), HoraHora (CurTime ()),:, TempoMinuto (CurTime () ), \ n Symbol =, Symbol (), Period =, Period ());
if (EmailON) SendMail (alerta de sinal SELL, sinal SELL em Ask = DoubleToStr (Ask, 4) , Bid = DoubleToStr (Bid, 4) , Data = TimeToStr (CurTime (), TIME_DATE) TimeHour ( CurTime ()) : TimeMinute (CurTime ()) Símbolo = Símbolo () Período = Período ());
//}
tmp = CurTime () (Período () - MathMod (Minuto (), Período ())) * 60;
GlobalVariableSet (AlertTime Symbol () Período (), tmp);
GlobalVariableSet (SignalType Symbol () Período (), OP_BUY);
//GlobalVariableSet (LastAlert Symbol () Período (), - 1);
}
retorno (0);
}