Perguntas de Iniciantes MQL5 MT5 MetaTrader 5 - página 558

 
K.t.s:

Olá a todos,

Como é que consigo os dígitos que compõem um número? (número 36, dígitos 3 e 6)

Deve primeiro converter o número para uma corda e depois passar a corda uma a uma e extrair os caracteres:

//+------------------------------------------------------------------+
//|                                                         Test.mq5 |
//|                                      Copyright 2012, CompanyName |
//|                                       http://www.companyname.net |
//+------------------------------------------------------------------+
#property script_show_inputs
input int number=36;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+ 
void OnStart()
  {
   string   text=IntegerToString(number);
   int      len=StringLen(text);
   for(int i=0;i<len;i++)
     {
      string Substr=StringSubstr(text,i,1);
      Print(Substr);
     }
  }
//+------------------------------------------------------------------+
Arquivos anexados:
Test.mq5  2 kb
 
q15:

Saudações a todos os presentes,

Pergunta de novato - Quero encomendar um programa - robô para negociação em câmbio de moeda criptográfica. Até agora, estou a concentrar-me nos níveis de Fibonacci (ou análise de velas), mas ainda não escolhi a estratégia final. O programa deve colocar duas ou três ordens de compra ou venda para duas ou três moedas, dependendo do fecho do dia anterior e do comportamento do preço neste dia. Após a execução de uma ordem de compra, coloca uma ordem de venda e vice versa, etc. Todas as acções são explicadas no programa, as melhores opções são propostas, o programa está a funcionar no computador 24 horas por dia, tendo em conta possíveis falhas de ligação. Até agora, nesta aproximação.

O que é de interesse - o possível preço e o calendário. Talvez o seu conselho de especialista.

Com os melhores cumprimentos

O trabalho é feito na secção Freelance. Artigo de referência sobre como fazer encomendas em freelancing:"Como encomendar um robô de vendas e obter resultados".
 
K.t.s:

Olá a todos,

Como é que consigo os dígitos que compõem um número? (número 36, dígitos 3 e 6)

Escrevi um guião. Consegue descobrir?

//+------------------------------------------------------------------+
//|                                    Разложение числа на цифры.mq4 |
//|              Copyright 2016, Artem A. Trishkin, Skype artmedia70 |
//|                       https://login.mql5.com/ru/users/artmedia70 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, Artem A. Trishkin, Skype artmedia70"
#property link      "https://login.mql5.com/ru/users/artmedia70"
#property version   "1.00"
#property strict
#property script_show_inputs
//--- input parameters
input int      Input1=36;  // Число
int arrayNumbers[];
//+------------------------------------------------------------------+
//| Script program start function                                    |
//+------------------------------------------------------------------+
void OnStart()
  {
//---
   ArrayResize(arrayNumbers,StringLen(IntegerToString(Input1)));
   DecompositionNumber(Input1,arrayNumbers);
   for(int i=0; i<ArraySize(arrayNumbers); i++) {
      Print("Индекс массива ",i,": цифра ",arrayNumbers[i]);
      }
  }
//+------------------------------------------------------------------+
// раскладывает число на цифры и записывает их в массив.
void DecompositionNumber(int number, int &array[]) {
   ArrayInitialize(array,0);
   int n=1;
   for(int i=0; i<ArraySize(array); i++) {
      n=(i>0)?n*10:n;
      array[i]=(number/n)%10;
      }
}
//+------------------------------------------------------------------+
 
Karputov Vladimir:
Que construção? Insira uma imagem, por favor, as definições de optimização.

Para responder à sua pergunta, começou a repetir-se a situação de ontem com dois processos de metáfora, mas tudo se normalizou por si só... ou seja, posso ter feito dois testes)

E agora, depois de reiniciar, o testador funciona normalmente e carrega o computador dentro da razão. Construir 1297 com cobertura.

OBRIGADO PELO FEEDBACK !

!!! No entanto, esta aleatoriedade tornou-se um padrão...

Já existem três metatores na memória e dois deles carregam a memória até 100%, o terceiro aparentemente não tem espaço suficiente)

Espero conseguir aqui uma fotografia no ficheiro zip, se quiser acrescentar, então diga-me ?

Três metatester.exe

Arquivos anexados:
ctbd3vtzdk2.zip  65 kb
 
akarustam:

Para responder à sua pergunta, começou a repetir-se a situação de ontem com dois processos de metáfora, mas tudo se normalizou por si só... ou seja, posso ter feito dois testes)

E agora, depois de reiniciar, o testador funciona normalmente e carrega o computador dentro da razão. Construir 1297 com cobertura.

OBRIGADO PELO FEEDBACK !

!!! No entanto, esta aleatoriedade tornou-se um padrão...

Já existem três metatores na memória e dois deles carregam a memória até 100%, o terceiro aparentemente não tem espaço suficiente)

Esperemos que a imagem do ficheiro zip chegue aqui, se quiser acrescentar, avise-me ?

Infelizmente não posso verificar um sistema operacional tão antigo, como o senhor (as definições do meu sistema são as três primeiras linhas do separador "Log" após um reinício do terminal ":

2016.04.10 06:57:30.121 Terminal        MetaTrader 5 x64 build 1297 started (MetaQuotes Software Corp.)
2016.04.10 06:57:30.121 Terminal        Windows 10 Pro (x64 based PC), IE 12.62, UAC, Intel Core i3-3120 M  @ 2.50 GHz, RAM: 1306 / 3981 Mb, HDD: 38854 / 233310 Mb, GMT+02:00
2016.04.10 06:57:30.121 Terminal        C:\Users\KVN\AppData\Roaming\MetaQuotes\Terminal\0 CFEFA8410765D70FC53545BFEFB44F4

), mas penso que carregar núcleos está bem, apenas no meu sistema operativo não vejo metatester.exe, mas sim agentes de teste:

1

e aqui está a carga por núcleos (eu tenho quatro núcleos):

2

 
Karputov Vladimir:

Infelizmente não posso verificar um sistema operativo antigo como o seu (as minhas definições do sistema são as três primeiras linhas do separador "Log" depois de reiniciar o terminal":

), mas penso que a carga do núcleo é normal, só que no meu sistema operativo não vejo metatester.exe, mas sim agentes de teste:

e aqui está o carregamento por núcleos (eu tenho quatro núcleos):

OBRIGADO, enquanto estou a explorar, muitas coisas novas. Planeei e já trouxe um dez com todas as candidaturas, estudarei e quero compreender as razões da negatividade em relação ao dez (conheci tais em fóruns). Contudo, este é o Nosso futuro próximo e existem respostas modernas óbvias aos desafios do Nosso tempo. OBRIGADO (OBRIGADO)).
 
A1981:
Olá, escrevi um guião para colocar paragens numa ordem aberta. Escrevi um guião que estabelece paragens na ordem aberta e as ordens pendentes são colocadas com base na ordem aberta. Tudo funciona, mas no par seguinte na ordem aberta são colocadas paragens, mas as ordens pendentes não se abrem.
 

Karputov Vladimir:

A1981:
Boa tarde. Escrevi um guião para definir paragens na ordem aberta e as ordens pendentes são colocadas com base na ordem aberta. Tudo funciona, mas para o par seguinte na ordem aberta são colocadas paragens, mas as ordens pendentes não se abrem.
Deve ir aqui.
 
Artyom Trishkin:
Deve ir aqui.
Artyom Trishkin:

Artyom Trishkin:
Tem de vir aqui.

Artyom Trishkin:
Tem de ir aqui. Descobri por mim próprio. Obrigado por não teres sido insistente.
 

Aqui estão as maravilhas de testar um programa de EA em MT5 (ver ficheiro de imagem)...Pode haver eqividade positiva com um saldo negativo ? e quando é que o saldo é negativo ? Antes de me virar para a Nação do Comércio mudou muito a minha opinião e nunca chegou a fazê-lo... Penso que está na hora de dormir um pouco)

Se alguém interessado no código aberto e no set me avisar ? - Irei certamente afixá-lo. Comecei a dominar o MT5 com hedging e agora, - milagres, no entanto)

Arquivos anexados:
Razão: