Quaisquer perguntas de recém-chegados sobre MQL4 e MQL5, ajuda e discussão sobre algoritmos e códigos - página 1176

 
Alexey Belyakov:

https://www.mql5.com/en/code/23479 Este aqui não funciona.

Eu tentei, mas tenho um problema no código, não acho que alguém queira entrar nos meus rabiscos, prefiro fazê-lo novamente.


Portanto, aqui está ele:

datetime some_time=TimeCurrent();
extern string Symbol3 = ""; //Инструмент (""текущий по умолчанию)
extern double P=5;       //Таймфрейм


int start()
{
int  raznV;
int percV;
int SD=5; // переменная для поиска разницы объёма
int sig;

double VAL2=MathAbs(iVolume(NULL,P,2));  //Т.Объём
double VAL1=MathAbs(iVolume(NULL,P,1));


raznV =MathAbs(iVolume(NULL,P,2)-iVolume(NULL,P,1));  //Разница объёма
percV =MathRound(raznV/(VAL1*0.01)); // Разница в (%)

//Цикл сканирования последних свечей SD,на которых есть разница равная 50%.
for (int i=SD; i>=0; i--)
{
int  sig=(raznV[i])>50;


//Если  есть нужная разница, значение будет больше нуля.
if (sig>0)
{
Alert ("Сигнал");
}

if (SD>5)
{
ObjectDelete("signal4");
} 


return(0);

int sig=(raznV[i])>50; Aqui está o engate. Não sei como apresentá-lo de uma maneira diferente. E você precisa detectar um desvio de pelo menos 50% nas velas anteriores.

Seu código é tão bonito quanto um ensaio escrito por um aluno não muito estudioso da primeira série - sem ofensa, pelo menos você pode escrever comentários :)

Especialmente eu gostei deraznV[i], você veio do PineScript? Vá lá, esta é uma linguagem de programação normal))

em vermelho - erros importantes, em amarelo - falhas

 
Boa tarde. Tenho uma pergunta sobre um movimento negativo em um muving. Como resultado, ou abrir um comércio por este valor ou fechá-lo não funciona. Como resolver esta questão?
 

Olá. Por favor, ajude com a importação da dll. Tentei importar funções da trans2quik.dll

#import "trans2quik.dll"
   int _TRANS2QUIK_CONNECT@16(string lpcstrConnectionParamsString, int& pnExtendedErrorCode[], string lpstrErrorMessage, int dwErrorMessageSize);
#import

Funcionou, a dll retornou o código 0(TRANS2QUIK_SUCCESS). Quando tentei importar outras funções, o compilador me deu um erro sobre o nome longo (eu sei do fórum que mais de 31 caracteres no nome da função não são permitidos). Como mais posso importar funções? Eu tentei fazê-lo por número de função, como descrito aqui (https://docs.microsoft.com/ru-ru/cpp/build/exporting-functions-from-a-dll-by-ordinal-rather-than-by-name?view=vs-2019), mas se eu o fiz errado, ou o compilador não pode jurar pelo número (escreve o nome esperado) eu entendo que para juntar uma dll é necessário um invólucro? Ou é possível editar nomes de funções na própria dll? Se for importante, há arquivos .h e .lib no arquivo dll.

 
Darirunu:
Boa tarde. Tenho uma pergunta sobre uma mudança negativa de turno de muving. Como resultado, ou abrir um negócio por este valor ou fechá-lo não funciona. Como posso resolver este problema?

Você pode anexar um pedaço de código?

 
É possível mudar programticamente a velocidade do teste?
 
Yevhenii Levchenko:
É possível mudar programticamente a velocidade do teste?

você pode

 
f1nik:

Olá. Por favor, ajude com a importação da dll. Tentei importar funções da trans2quik.dll

Funcionou, a dll retornou o código 0(TRANS2QUIK_SUCCESS). Quando tentei importar outras funções, o compilador me deu um erro sobre o nome longo (eu sei do fórum que mais de 31 caracteres no nome da função não são permitidos). Como mais posso importar funções? Eu tentei fazê-lo por número de função, como descrito aqui (https://docs.microsoft.com/ru-ru/cpp/build/exporting-functions-from-a-dll-by-ordinal-rather-than-by-name?view=vs-2019), mas se eu o fiz errado, ou o compilador não pode jurar pelo número (escreve o nome esperado) eu entendo que para juntar uma dll é necessário um invólucro? Ou posso editar os nomes das funções na própria dll? Se for importante, o arquivo com dll tem arquivos .h e .lib.

Na MQL por número não é possível.

 
Koldun Zloy:

Você não pode fazer isso em MQL por número.

Obrigado. Portanto, só existe um adaptador dll entre o terminal e atrans2quik.dll
 
f1nik:
Obrigado. Portanto, só existe um adaptador dll entre o terminal e atrans2quik.dll

Você já tentou deslizar uma corda como #define strings "long long string" ou até mesmo como duas cordas via + ou função string.

Afinal, o Comentário também é limitado no comprimento do fio, mas as variáveis podem ser empurradas de tal forma que não cabem no monitor em algumas linhas.

 
Olá. Você pode sugerir um script ou função para calcular o tamanho do lote, dependendo da margem especificada para Forex, porque todos os scripts calculam a margem sobre o tamanho do lote. Seria conveniente abrir um determinado montante fixo de fundos gratuitos no depósito, como em BOO.
Razão: