O meu CD tem pleno acesso ao código da EA no terminal?

 

Saudações a todos!

Como se costuma dizer, uma pergunta para os peritos!

Há algum tempo atrás escrevi um certo indicador e mais tarde desenvolvi um Expert Advisor com base nele.

A ideia acabou por se revelar interessante! No entanto, reparei que tudo estava a funcionar na história e o sistema ficou parado - o indicador quase nunca se afastou de zero. O indicador utiliza vários preços de diferentes moedas ao mesmo tempo - sem médias, sem acumulação de preços ou algo do género. E qual foi a minha surpresa quando no dia seguinte este indicador saltou como uma loucura no dia anterior "calmo".

Isto levantou 2 questões.

1) A minha empresa de corretagem tem acesso ao código do meu indicador EA através do terminal?

2) O que aconteceu aos preços e porque os alteraram no terminal - é um isco?

Algo semelhante a isto

 
O indicador não está escrito correctamente
 
AlexSTAL:
O indicador não está escrito correctamente

A questão é que o indicador é escrito correctamente - quase como este - a diferença é que foram acrescentadas mais moedas

#property version   "1.00"

#property indicator_separate_window

#property indicator_buffers 1
#property indicator_plots   1

#property indicator_type1   DRAW_HISTOGRAM

#property indicator_color1  Red         

#property indicator_width1  1          

#property indicator_style1  STYLE_SOLID
//------------------------------------------------------------------------------
input int bar_otrisovki=500;      // количество баров для отрисовки индикатора
int i;      

double rashit1Buffer[];
      MqlRates mrate[];
   
int OnInit()
  {
//--- indicator buffers mapping
   SetIndexBuffer(0,rashit1Buffer,INDICATOR_DATA);   
//---               
   PlotIndexSetString(0,PLOT_LABEL,"AUDNZD");             
//---  
   ArraySetAsSeries(rashit1Buffer,true);                                 
//---
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime& time[],
                const double& open[],
                const double& high[],
                const double& low[],
                const double& close[],
                const long& tick_volume[],
                const long& volume[],
                const int& spread[])
  {
     
//---Убедимся в том, что значения наших массивов для котировок, указаны как таймсерии
   ArraySetAsSeries(mrate,true);
//+------------------------------------------------------------------+
//| Загружаем катировки                                              |
//+------------------------------------------------------------------+       
        if(CopyRates("AUDNZD",_Period,0,bar_otrisovki,mrate)<0)
        {
        Print(" Ошибка копирования исторических котировок символа AUDNZD - ошибка: ",GetLastError(),"!");
        return(0);
        }            
                      
//---
   int limit=1;
   
   if(prev_calculated>0)// обработано баров на предыдущем вызове
      limit=1;
   else
      limit=bar_otrisovki;
                                
//--- расчёт индикатора         
     for(i=limit-1;i>=0;i--)
     {  
                       
      rashit1Buffer[i]=mrate[i].close;
                          
     }    
//--- return value of prev_calculated for next call
   return(rates_total);
  }
//+------------------------------------------------------------------+
 
z_e_e_d:

A questão é que o indicador está escrito correctamente - quase como este - a diferença é que foram acrescentadas mais moedas e é só isso

São estas palavras-chave?
 
AlexSTAL:
Serão estas as palavras-chave?
em resumo - este indicador mostra os preços de fecho AUDNZD - no terminal, a tabela de moedas e o indicador são exactamente os mesmos. Portanto, o indicador está escrito de forma ABSOLUTAMENTE correcta! Não há necessidade de picar palavras - o código está mesmo à sua frente.
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5
 
z_e_e_d:
Em resumo - este indicador mostra os preços de fecho AUDNZD

Esta é uma informação muito importante para a sua dtz, especialmente no AUDNZD. Eles farão tudo. Tem de se proteger de alguma forma. Já pensou no assunto?

 
z_e_e_d:

1) O meu CD pode aceder ao meu código EA através do terminal?

Esta pergunta não será respondida aqui. No máximo, receberá uma brincadeira sobre o assunto. Pense nisto: para uma resposta positiva à pergunta precisa de pelo menos duas condições:

1) a plataforma deve permitir ao corretor o acesso aos ficheiros do terminal do cliente;

2) o corretor deve ter um descodificador de ficheiros .ex5, que nesta fase de desenvolvimento da plataforma só a MQ poderia oferecer.

Avalie por si próprio a probabilidade de tais condições serem divulgadas a pedido do utilizador médio (mesmo que tais condições existam).

 
Yedelkin:

Ninguém lhe responderá a essa pergunta aqui. No máximo, terá uma piada sobre o assunto. Pense nisso: para uma resposta positiva à pergunta, devem ser cumpridas pelo menos duas condições:

1) a plataforma deve permitir ao corretor o acesso aos ficheiros do terminal do cliente;

2) o corretor deve ter um descodificador de ficheiros .ex5, que nesta fase de desenvolvimento da plataforma só a MQ poderia oferecer.

Avalie por si próprio a probabilidade de tais condições serem divulgadas a pedido do utilizador médio (mesmo que tais condições existam).

Outra forma de se proteger é permitir a encriptação do ficheiro EA (nas propriedades). Num outro computador, este ficheiro não será lido. Tem de ter cuidado, senão não conseguirá lê-lo você mesmo :)
 
-Alexey-:
Outra opção de protecção é permitir a encriptação do ficheiro EA (nas propriedades). Num outro computador, este ficheiro não será lido. Tem de ter cuidado, caso contrário não o poderá ler :)
O que quer dizer? Trata-se de encriptar o sistema de ficheiros NTFS? Se assim for, está profundamente enganado....
 

Fechar este fio.

Pára de dizer sempre as mesmas parvoíces.

 
Renat:

Fechar este fio.

Pára de dizer sempre as mesmas parvoíces.

E se eles o roubarem? O CD provavelmente precisa deste (ou de qualquer outro) GRAAL"particular" mais do que qualquer outra coisa...