[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 297
Você está perdendo oportunidades de negociação:
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Registro
Login
Você concorda com a política do site e com os termos de uso
Se você não tem uma conta, por favor registre-se
Não há ideal! Eu apenas observo as pessoas que escrevem, por assim dizer, para uma visão geral. Às vezes encontro alguns truques que posso aprender com os outros. Às vezes vejo que o código não é legível de forma alguma. Como os tarasBY's, por exemplo. Não importa o quanto eu tente, não pode ser lido. Posso lê-lo em segmentos claros e depois bam! não consigo entender mais nada. E assim em muitos lugares.
Sou um amigo que me pediu para descompilar, e lá é mais fácil de entender do que os códigos do TarasBY. Talvez seja um pouco normal, mas duvido que muitos baixadores os entendam. Quem é inteligente demais para entendê-los, não fará o download... Então surge a questão porque colocá-los lá :)
Eu meço meu tempo de acordo com o Tempo Médio de Greenwich.
Agora eu estou dormindo. Boa noite.
O que eles dizem na Catalunha?
De jeito nenhum
Sim, é a proporção de dois logaritmos naturais. Agora veja a fórmula de "Substituição da base do logaritmo". Então o resultado é que esta expressão
é equivalente ao logaritmo decimal para bd_LOTSTEP. Na MQL não há uma função separada para o logaritmo decimal, portanto, esta conversão é utilizada.
Isto era o que eu estava dizendo. O código da minha língua... Acho que ou o programador não tem medo da matemática ou é uma espécie de proteção contra a leitura de código (só brincadeira). Não sei, minha opinião pessoal é que a matemática simplifica o algoritmo como a troca...caso, em vez de se.
Mostrar SetVLine();
dados errados, por favor indique onde está o erro.
Eu inseri todos os códigos, exceto "copyright"
extern int PeriodP=12;
extern int TimeFrame=0;
double P_up0,P_up1,FrApPrise;
//+
+
//| expert initialization function |
//+
+
int init()
{
//
// return(0); } //+xml-ph-0016@deepl.in+
//| expert deinitialization function |
//+ +
int deinit()
}
//+
+ //| expert start function |
//+
+
int start()
{ //
P_up0=iCustom(Symbol(),Period(), "Price channel",PeriodP,0,0)
P_up1=iCustom(Symbol(),Period(), "rezerv-xrust",FrApPrise,0,0);
{Comment("show price channel=",P_up0,"\n", "show xrust=",P_up1);}
//
return(0);
}
usou dois indicadores 1)https://wwww.
mql5.com/pt/code/8908 https://www.mql5.com/ru/code/8318 Price channel.mq4
2)
Fractal_Level_Xrust_V2.mq4
favor ajudar, por que 1 programa e o outro não quer?
Era isso que eu estava dizendo. Condicionar minha linguagem... Acho que ou o programador não tem medo da matemática ou é uma espécie de proteção contra a leitura de código (só brincadeira). Não sei, minha opinião pessoal é que a matemática simplifica o algoritmo como a troca...caso, em vez de se.
Há uma falha nesse código. Aqui, retirado do contexto:
A questão é que a expressão
Portanto, o valor do lote será arredondado para uma casa decimal.
Continue lendo, porém, talvez ajude.
Um pequeno acréscimo à descrição da minha pergunta. Redefini o indicador de restrição, aqui está o código
#propriedade copyright "#Copyright © 2008, XrustSolution.#"
#link de propriedade "#xrust.ucoz.net
#janela_do_cartão_indicador de propriedade
TempoTempo interno externo=0;//Se=0, então o atual
fio externo FrApNam="Ap";//nome da linha correspondente ao Fractal ascendente.
fio externo FrDnNam="Dn";//nome da linha correspondente ao Fractal para baixo
//-----------------------------------------------------------------------------+
FrPrise duplo;
duplo FrApPrise=0,FrDnPrise=0;
//+----------------------------------------------------------------------------+
init(){
if(TimeFrame==0){TimeFrame=Periodo();}
IndicatorShortName("Factal_Level_Xrust "+TimeFrame);
FrApNam=StringConcatenate(FrApNam,TimeFrame);
FrDnNam=StringConcatenate(FrDnNam,TimeFrame);
retornar;}
void deinit(){
ObjectDelete(FrDnNam);
ObjectDelete(FrApNam);
Comentário(" ");
retornar;}
//+----------------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
limite int;
tmp duplo;
int i, j,k;
if(counted_bars<0) return(-1);
if(counted_bars>0) counted_bars--;
limite=barras_contadas_combarras;
//-----------------------------------------------------------------------------+
LineAp();
LineDn();
string FAP=DoubleToStr((FrApPrise),Dígitos);
string FDP=DoubleToStr((FrDnPrise),Dígitos);
int diap=MathRound((FrApPrise-FrDnPrise)/Point);
{Comentário("TimeFrame="+TimeFrame+
"\nApPrise111 ="+FAP+
"\nDnPrise ="+FDP+
"\nFractal Channel ="
+diap+"Ponto");}
retorno(0);
}
//-----------------------------------------------------------------------------+
// procura linha horizontal pelo nome redraws se o preço mudou |
//-----------------------------------------------------------------------------+
LineDn(){
FrPrise=NormalizeDouble(FindNearFractal(0,TimeFrame,MODE_LOWER),MarketInfo(Symbol(),MODE_DIGITS));
FrPrise=NormalizeDouble(FrPrise,MarketInfo(Symbol(),MODE_DIGITS));
//Comentário(FrPrise);
if(ObjectFind(FrDnNam)==0){
if(ObjectGet(FrDnNam,OBJPROP_PRICE1)==FrPrise){retorno;}}}}
FrDnPrise=FrPrise;
ObjectDelete(FrDnNam);
WindowRedraw();
retornar;}
//-----------------------------------------------------------------------------+
// procura por uma linha horizontal pelo nome, redraws se o preço mudou |
//-----------------------------------------------------------------------------+
LineAp(){
FrPrise=NormalizeDouble(FindNearFractal(0,TimeFrame,MODE_UPPER),MarketInfo(Symbol(),MODE_DIGITS));
FrPrise=NormalizeDouble(FrPrise,MarketInfo(Symbol(),MODE_DIGITS));
if(ObjectFind(FrApNam)==0){
if(ObjectGet(FrApNam,OBJPROP_PRICE1)==FrPrise){retorno;}}}}
FrApPrise=FrPrise;
ObjectDelete(FrApNam);
WindowRedraw();
retornar;}
//-----------------------------------------------------------------------------+
//Quim Respeito e respeito!!! |
//+----------------------------------------------------------------------------+
//| Autor : Kim Igor V. aka KimIV, http://www.kimiv.ru |
//+----------------------------------------------------------------------------+
//| Versão : 07.10.2006 |
//| Descrição : Procure o fractal mais próximo. Retorna o nível de preço. |
//+----------------------------------------------------------------------------+
//| Parâmetros: |
//| sy - nome do instrumento ("" ou NULL - símbolo corrente) |
//| tf - cronograma ( 0 - TF atual) |
//| mode - fractal type (MODE_LOWER|MODE_UPPER) |
//+----------------------------------------------------------------------------+
double FindNearFractal(string sy="0", int tf=0, int mode=MODE_LOWER) {
if (sy===""" || sy=="0") sy=Symbol();
duplo f=0;
int d=MarketInfo(sy, MODE_DIGITS), s;
if (d==0) if (StringFind(sy, "JPY"<0) d=4; else d=2;
para (s=2; s<100; s++) {
f=iFractals(sy, tf, mode, s);
se (f!=0) retornar(NormalizeDuplo(f, d))
}
Imprimir("FindNearFractal(): Fractal não encontrado");
retorno(0);
}
Só não preciso de linhas no gráfico, só preciso de dois números (um de cada um desses indicadores espirituais).
Uma pequena adição à descrição da minha pergunta: reelaborei o indicador de crise, aqui está o código
Se você quiser obter uma resposta, respeite as pessoas que lêem seus rabiscos.
O código deve ser inserido usando o botão SRC - está acima da caixa de edição do seu post, entre outras ferramentas de formatação.