[ARQUIVO]Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por ela. Não posso ir a lugar nenhum sem você - 5. - página 24

 
WindSW:

Através de impressão

Experimente este projeto

double xDelH[1][1];
double HBar[1][1];

int countDH=0;
HBar[countH][0]=1.23456;

xDelH[countDH][0]=HBar[countH][0];

Print("HBar=",DoubleToStr(HBar[countH][0],3),"  xDelH=",DoubleToStr(xDelH[countDH][0],4));
// распечатается: HBar=1.234  xDelH=1.2345

Veja como funciona para você.

 
Dimka-novitsek:
Sim, obrigado!!! Fui eu que vim direto da rua para o computador e fiquei com algo completamente confuso!

Dimitri! Um par de dicas para você. Primeiro o código (tente pegar a diferença):

//---- Константы
#define MAGIC 450
//---- Внешние переменные советника
extern int StopLoss   = 25;
extern int TakeProfit = 30;
//---- Глобальные переменные
double gd_TP, gd_SL;
int init()
{
    gd_TP = TakeProfit * Point;
    gd_SL = StopLoss * Point;
}
//---- Здесь какая-то пользовательская функция или start()
    if (Svetsja_1) if (!Svetsja_2) if (!Svetsja_3) if (!Orderbuy)
    {
        //стоп лосс 25 п. профит 30 п;стоп лосс 25 п. тралится по MA 20    
        double ld_TP, ld_SL;
        RefreshRates();
        if (TakeProfit != 0.0) ld_TP = NormalizeDouble (Bid + gd_TP);
        if (StopLoss != 0.0) ld_SL = NormalizeDouble (Bid - gd_SL);
        int li_Ticket = OrderSend (Symbol(), OP_BUY, lot, NormalizeDouble (Ask, Digits), 5, ld_SL, ld_TP, NULL, MAGIC, 0, CLR_NONE);
        if (li_Ticket > 0)
        {  
            Sleep (2000); RefreshRates(); 
            li_Ticket = OrderSend (Symbol(), OP_BUY, lot, NormalizeDouble (Ask, Digits), 5, ld_SL, ld_TP, NULL, MAGIC, 0, CLR_NONE);
            if (li_Ticket > 0) Orderbuy = 1;
            else
            {
                Error = GetLastError();
                string errorcomment = "Ошибка открытия ордера OP_BUY" + " " + Symbol() + " " + ErrorDescript (Error); 
                Print (errorcomment);
            }
        }
    }

O que você notou de diferente? - Liste-o, e eu então formularei conselhos (se você estiver interessado, é claro). ;)

 
Muito obrigado!!!!!!! Atualizei a página e a vi. Meu irmão estará aqui em breve, eu me reportarei mais tarde.
 
Por favor, informe qual é o erro do GBPUSD,H1: divisão zero
 
Frostr:
Por favor, informe qual é o erro do GBPUSD,H1: divisão zero


Divisão por zero.
 
Frostr:
Por favor, informe qual é o erro do GBPUSD,H1: divisão zero


Especialmente se no testador você estiver tentando usar valores de outros gráficos. Por exemplo, se você testar o Expert Advisor no EURUSD, mas tentar obter dados indicadores de algum outro gráfico...
 

Eu não entendo o que está errado - isto nunca aconteceu antes. Chamo o iCustom() para leituras indicadoras e como resultado, meu consultor especializado escreve que ele não pode abrir o arquivo indicador.

Aqui está o código que eu usei, que sempre funcionou:

#property show_inputs
// ------------- Пользовательские переменные ------------------------
extern string   с1=" -------- Rad Has -------------";
extern string   IndiRadHas_Name="Rad_Has";
extern int                      MaMetod  = 2;
extern int                      MaPeriod = 6;
extern int                      MaMetod2  = 3;
extern int                      MaPeriod2 = 2;

//+------------------------------------------------------------------+
//| script program start function                                    |
//+------------------------------------------------------------------+
int start(){
  // -------------- Пользовательские переменные -------------------
        string  SMB=Symbol();

        Alert("======================================");
        // --------------- инициализируем значения индикатора RadHas -----------------------------------
                double RadHas_0_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,0,1);
                double RadHas_1_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,1,1);
                double RadHas_2_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,2,1);
                double RadHas_3_1=iCustom(SMB,0,IndiRadHas_Name,MaMetod,MaPeriod,MaMetod2,MaPeriod2,3,1);
                //RadHas_0_1=NormalizeDouble(RadHas_0_1,Digits);
                //RadHas_1_1=NormalizeDouble(RadHas_1_1,Digits);
                //RadHas_2_1=NormalizeDouble(RadHas_2_1,Digits);
                //RadHas_3_1=NormalizeDouble(RadHas_3_1,Digits);
        Alert("RadHas_0_1 = ",RadHas_0_1);
        Alert("RadHas_1_1 = ",RadHas_1_1);
        Alert("RadHas_2_1 = ",RadHas_2_1);
        Alert("RadHas_3_1 = ",RadHas_3_1);
        Alert("============== Скрипт 0 на паре ",SMB," ==============");
return(0);

}
//+------------------------------------------------------------------+
O indicador é anexado ao posto. Por que você acha que o arquivo indicador não vai abrir?
Arquivos anexados:
rads_has.mq4  6 kb
 
Esqueci de lhe dizer, a construção do terminal é 445
 
drknn:
Esqueci de lhe dizer, a construção do terminal é 445

São permitidos chamados a especialistas externos nos ambientes?
 
rigonich:

São permitidas chamadas de especialistas externos em ambientes?

Há sete anos estou programando para forex. Eu dificilmente teria perdido um erro tão grosseiro. Você tenta chamar as leituras indicadoras com este roteiro em seu terminal.

O problema é que há um ano eu chamei este indicador em particular com um roteiro e tudo estava bem. Eu o chamei da mesma forma que o faço agora.