[AVISO FECHADO!] Qualquer pergunta de novato, para não desorganizar o fórum. Profissionais, não passem por aqui. Não posso ir a lugar algum sem você. - página 1066

 
Melena:

Olá, queridos membros do fórum, muito ansiosos por sua ajuda.....

Então a questão é o que você pensa, caros especialistas na área, se estou pensando na direção certa, e se não, por favor, informe o que pode ser feito com esses dados, como e onde aplicar a regressão linear? que hipótese pode ser criada e depois confirmar ou negar? Eu mesmo estou longe de ser um especialista neste campo, nunca encontrei estatísticas antes, muito menos o método exploratório(((.

Obrigado de antemão!

Sinceramente,

Milena.

Durante o ano, o número de clientes muda drasticamente (pelo que entendo), então é preciso considerar a dinâmica de mudança do número de pessoas sendo tratadas(a história se repete).

Adira à época, no dia 1º de dezembro de cada ano eu vou onde ...

E assim em todos os pontos

Ou há um bom método para minimizar

http://www.google.com.ua/search?source=ig&hl=ru&rlz=1G1GGLQ_RUUA357&=&q=%D0%97%D0%B0%D0%B4%D0%B0%D1%87%D0%B0+%D0%BC%D0%B8%D0%BD%D0%B8%D0%BC%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D0%B8+%D1%83%D0%BF%D1%83%D1%89%D0%B5%D0%BD%D0%BD%D0%BE%D0%B9+%D0%B2%D1%8B%D0%B3%D0%BE%D0%B4%D1%8B&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&aq=f&oq=

Desktop_1.zip (2 871.41 KB) apagar

 
granit77:

Print(iMA("EURUSD", PERIOD_D1, 14, 0, MODE_SMA, PRICE_CLOSE,0)));

Isto é mais preciso.
:) Dormindo em movimento... :)
 
marker:

Em princípio, isto é provavelmente o que vai acontecer. Uma conta, 8 termos, 8 scripts cada um salvará seus negócios em uma pasta separada (ordenada por magia). Por que eu quero uma conta, porque quero olhar a curva de toda a carteira....somente algo como isto....s estão agora pendurados separadamente. Obrigado pela resposta:)) Embora, seria mais conveniente se todas as negociações fossem armazenadas em um arquivo, mas classificadas, seria mais conveniente, todas classificadas em um arquivo, você pode fazer isso?

Existe tal coisa, mas você não é um codificador ;))

https://www.mql5.com/ru/code/8051

 

Olá !

Você pode me dizer qual é a rentabilidade de 981 ? Isso é possível? É que a soma de todos os lucros positivos é 981 vezes a soma de todas as perdas? (mas o lucro é 24 e o drawdown é 13... algo que eu não entendo....). Eu otimizo através do "Fator de Lucro".

Onde está o saque de 13 dólares aqui...?


Aqui está o relatório de teste:


 

Sim!! Extremamente interessante. O resultado está além de qualquer coisa, eu mesmo não sou bom em testes.

Não entendo nada!!!!!!!! Decidi prescrever uma parada para o meu consultor especializado.

A variável vzlet conta quantos pontos o preço subiu em relação ao momento em que abri o pedido; a variável newloss é uma nova perda; é igual ao tamanho por quantos pontos se moverá quando o pedido for movido e dentro do pedido-modificá-lo é escrito de uma maneira muito simples e clara Bid+newloss*PointX

Tendo recebido o erro 130, por diversão criei uma variável bylstop=Bid+stoploss*PointX; -bylstop, que lembra como era grande a parada quando o pedido foi aberto,

-O resultado é surpreendente - a diferença entre newloss e bylstop às vezes excede 200 pips e normalmente não menos de 100 pips. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!! É claro, o erro é 130! Mas como pode ser!!!!!! As fórmulas são extremamente simples!!! Nenhum erro!!!! Ou eu sou um completo idiota? Estou de olho há três dias, não entendo!!!!

//+------------------------------------------------------------------+
//| mpm.mq4 |
//| Dimon |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#propriedade copyright "Dimon
#link da propriedade "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| função de iniciação de especialista |
//+------------------------------------------------------------------+

Faixas externas int Período=20, i=1; Faixas externas intShift=0;
Faixas duplas externasDeviações=2,0;
duplo Lotes externos=0,1, TakeProfit=60, stoploss=25; duplo PointX;


int init()
{ if(Digits===5 || Digits===3) PointX = Point * 10; // Ponto de correção para três ou cinco dígitos
if(Dígitos==4 || Dígitos===2) PointX = Point;
//----

//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de desinicialização de especialistas |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de início especializado |
//+------------------------------------------------------------------+
duplo pedido; int ticket; duplo bylstop;
int start()
{double newloss=12; Alerta ("ticket",ticket);
duplo vzlet= (Close[1]-order)/PointX;

Alerta ("vzlet",vzlet); int total=OrdensTotal();// Comentário(" total ",total); Alerta (" total ",total);
Alerta ("PointX",PointX);


se (vzlet>==20)
{ for(int i = 0; i < total; i++)
{ OrderSelect( bilhete,SELECT_BY_TICKET,MODE_TRADES );
if(OrderSymbol() == Symbol()&&OrderMagicNumber() == 16384 &&OrderType() == OP_BUY)

OrderModify(OrderTicket(),OrderOpenPrice(),Bid+newloss*PointX,OrderTakeProfit(),0,Blue);
Alerta ("Modification error",GetLastError()));Alerta ("newlossbuy",Bid+newloss*PointX);Alerta ("bylstopbuy",bylstop);}


se (vzlet<==(-20))
{ for( i = 0; i < total; i++)
{ OrderSelect( bilhete,SELECT_BY_TICKET,MODE_TRADES );
if(OrderSymbol() == Symbol() && OrderMagicNumber() == 16384&&OrderType() == OP_SELLL)

OrderModify(OrderTicket(),OrderOpenPrice(),Ask-newloss*PointX,OrderTakeProfit(),0,Blue);
Alerta ("Modification error",GetLastError()); Alerta ("newlosssell",Ask-newloss*PointX); Alerta ("bylstopsell",bylstop); } } } Alerta ("bylstopsell",bylstop)



se ( total !=0 ){retorno;}

dupla Média,Verhnyayaghranytsa,Nyzhnyayaghranytsa,newres,soma,desvio;
texto de cordas; int err;
text="macd sample;
Média=iMA(NULL,0,BandsPeriod,BandsShift,MODE_SMA,PRICE_CLOSE,i);
int k,counted_bars=IndicatorCounted();

//----
//----
for( k = 0; k<BandsPeriod; k++)
{ newres=Close[k]-A média;//Alerta (" Média ",Média);
sum+=((newres*100)*(newres*100))/10000;//Alerta (" newres ",newres);
}




desvio=Deviações de Banda*MathSqrt(soma/Período de Banda);
Verhnyayaghranytsa=Average+deviation;
Nyzhnyayaghranytsa=Average-deviation;//Alert (" soma ",soma);
// Alerta (" desvio ",desvio");
//----
se (Verhnyayaghranytsa<Close[i])
{ Comentário(" bóia ",Verhnyayaghranytsa );
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-stoploss*PointX,Ask+TakeProfit*PointX, "macd sample",16384,0,Green);
Alerta (" stoploss ",Ask-stoploss*PointX);order=Close[0];order=Close[0];bylstop= Ask-stoploss*PointX;Alerta("Erro",GetLastError()));
}


se (Nyzhnyayaghranytsa>Close[i])
{ Comentário(" vender! ",Nyzhnyayaghranytsa );

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+stoploss*PointX,Bid-TakeProfit*PointX, "macd sample",16384,0,Red);
Alerta (" stoploss ",Bid+stoploss*PointX);bylstop=Bid+stoploss*PointX;
Alerta("ErrorOrdersell",GetLastError()); order=Close[0]; }

}
retorno(0);

//+------------------------------------------------------------------+

2010.12.22 14:22:09 2010.06.03 20:46 EURUSD,H1: Alerta: bylstopsell1.2247

2010.12.22 14:22:09 2010.06.03 20:46 Thunder EURUSD,H1: Alerta: newlosssell1.2154

2010.12.22 14:22:09 2010.06.03 20:46 Thu Thunder EURUSD,H1: Alerta: Erro de Modificação130

2010.12.22 14:22:09 2010.06.03 20:46 Thunder EURUSD,H1: OrderModify error 130

2010.12.22 14:22:04 2010.06.03 05:00 Thu Thunder EURUSD,H1: Alerta: bilhete2

2010.12.22 14:22:04 2010.06.03 05:00 Thu Thunder EURUSD,H1: Alerta: PointX0.0001

2010.12.22 14:22:04 2010.06.03 05:00 Thu Thunder EURUSD,H1: Alerta: vzlet16

2010.12.22 14:22:04 2010.06.03 05:00 Thu Thunder EURUSD,H1: Alerta: bilhete2

2010.12.22 14:22:04 2010.06.03 05:00 Thu Thunder EURUSD,H1: Alerta: PointX0.0001

2010.12.22 14:22:04 2010.06.03 05:00 Thunder EURUSD,H1: Alerta: vzlet16

Inventei esta cognição se(OrderSymbol() == Symbol() && OrderMagicNumber() == 16384&&OrderType() == OP_SELLL) para evitar escrever três vezes,

Coloco OrderSelect( bilhete,SELECT_BY_TICKET,MODE_TRADES ); e coloco OrderModify(OrderTicket(),OrderOpenPrice(),Bid+newloss*PointX,OrderTakeProfit(),0,Blue);

e há um erro onde ele não pode ser!!!!!!!!



Não só isso, multipliquei o PointX0.0001 por 10, e depois dividi (naturalmente fora do loop), embora isso seja fundamentalmente errado, sem entender a razão, e não fiquei menos confuso

//+------------------------------------------------------------------+
//| mq4 |
//| Dimon |
//| http://www.metaquotes.net |
//+------------------------------------------------------------------+
#propriedade copyright "Dimon
#link da propriedade "http://www.metaquotes.net"

//+------------------------------------------------------------------+
//| função de inicialização especializada |

//+----------------

--------------------------------------------------+

Faixas externas int Período=20, i=1; Faixas externas intShift=0;
Faixas duplas externasDeviações=2,0;
duplo Lotes externos=0,1, TakeProfit=60, stoploss=25; duplo PointX;


int init()
{ if(Digits===5 || Digits===3) PointX = Point * 10; // Ponto de correção para três ou cinco dígitos
if(Dígitos==4 || Dígitos===2) PointX = Point;
//----

//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de desinicialização de especialistas |
//+------------------------------------------------------------------+
int deinit()
{
//----

//----
retorno(0);
}
//+------------------------------------------------------------------+
//| função de início especializado |
//+------------------------------------------------------------------+
duplo pedido; int ticket; duplo bylstop;
int start()
{double newloss=12; Alerta ("ticket",ticket); PointX= PointX*10 ;
duplo vzlet= (Close[1]-order)/PointX;

Alerta ("vzlet",vzlet); int total=OrdensTotal();// Comentário(" total ",total); Alerta (" total ",total);
Alerta ("PointX",PointX);


se (vzlet>==20)
{ for(int i = 0; i < total; i++)
{ OrderSelect( bilhete,SELECT_BY_TICKET,MODE_TRADES );
if(OrderSymbol() == Symbol()&&OrderMagicNumber() == 16384 &&OrderType() == OP_BUY)

OrderModify(OrderTicket(),OrderOpenPrice(),Bid+newloss*PointX,OrderTakeProfit(),0,Blue);
Alerta ("Modification error",GetLastError()));Alerta ("newlossbuy",Bid+newloss*PointX);Alerta ("bylstopbuy",bylstop);}


se (vzlet<==(-20))
{ for( i = 0; i < total; i++)
{ OrderSelect( bilhete,SELECT_BY_TICKET,MODE_TRADES );
if(OrderSymbol() == Symbol() && OrderMagicNumber() == 16384&&OrderType() == OP_SELLL)

OrderModify(OrderTicket(),OrderOpenPrice(),Ask-newloss*PointX,OrderTakeProfit(),0,Blue);
Alerta ("Modification error",GetLastError()); Alerta ("newlosssell",Ask-newloss*PointX); Alerta ("bylstopsell",bylstop); } } } Alerta ("bylstopsell",bylstop)



se ( total !=0 ){retorno;} PointX = PointX/10;

dupla Média,Verhnyayaghranytsa,Nyzhnyayaghranytsa,newres,soma,desvio;
texto de cordas; int err;
text="macd sample;
Média=iMA(NULL,0,BandsPeriod,BandsShift,MODE_SMA,PRICE_CLOSE,i);
int k,counted_bars=IndicatorCounted();

//----
//----
for( k = 0; k<BandsPeriod; k++)
{ newres=Close[k]-A média;//Alerta (" Média ",Média);
sum+=((newres*100)*(newres*100))/10000;//Alerta (" newres ",newres);
}




desvio=Deviações de Banda*MathSqrt(soma/Período de Banda);
Verhnyayaghranytsa=Average+deviation;
Nyzhnyayaghranytsa=Average-deviation;//Alert (" soma ",soma);
// Alerta (" desvio ",desvio");
//----
se (Verhnyayaghranytsa<Close[i])
{ Comentário(" bóia ",Verhnyayaghranytsa );
ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Ask-stoploss*PointX,Ask+TakeProfit*PointX, "macd sample",16384,0,Green);
Alerta (" stoploss ",Ask-stoploss*PointX);order=Close[0];order=Close[0];bylstop= Ask-stoploss*PointX;Alerta("Erro",GetLastError()));
}


se (Nyzhnyayaghranytsa>Close[i])
{ Comentário(" vender! ",Nyzhnyayaghranytsa );

ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+stoploss*PointX,Bid-TakeProfit*PointX, "macd sample",16384,0,Red);
Alerta (" stoploss ",Bid+stoploss*PointX);bylstop=Bid+stoploss*PointX;
Alerta("ErrorOrdersell",GetLastError()); order=Close[0]; }

}
retorno(0);

//+------------------------------------------------------------------+



2010.12.22 14:48:09 2010.06.03 07:40 GMT EURUSD,H1: Alerta: PointX1.#INF

2010.12.22 14:48:09 2010.06.03 07:40 Thu Thunder EURUSD,H1: Alerta: vzlet0

2010.12.22 14:48:09 2010.06.03 07:40 Thu Thunder EURUSD,H1: Alerta: ticket-1

2010.12.22 14:48:08 2010.06.03 07:40 GMT,H1: Alerta: PointX1.#INF

2010.12.22 14:48:08 2010.06.03 07:40 GMT,H1: Alerta: vzlet0

2010.12.22 14:48:08 2010.06.03 07:40 GMT,H1: Alerta: ticket-1

2010.12.22 14:48:08 2010.06.03 07:40 Thu Thu EURUSD,H1: Alerta: PointX1.#INF.



 
Vejo, na segunda versão, se um pedido está aberto, o PointX não está mais dividido. Mas o problema principal não é pego.
 

Não entendo a lógica da atribuição de um bilhete. Não é um número sequencial, não é? Parece que o número de ingressos aumenta à medida que avançamos.

Mas como pode ser menos um!!!?

 
O que é PointX, para que serve? Point is point, newloss*Point is newloss points
 

Quando acabei de escrever meu primeiro EA, ele não funcionou, também escreveu erro 130, mas não uma modificação, e abertura do pedido, no fórum aconselhado, eles dizem que sua plataforma é de cinco dígitos, cole se(Dígitos===5 || Dígitos===3) PointX = Ponto * 10; // Correção de ponto para três-cinco dígitos
if(Dígitos===4 | Dígitos===2) PointX = Ponto; eu colei, tudo funcionou Eu colei, copiei, mas não consegui, descobri o erro ali, eu mesmo o descobrirei.



 
Dimka-novitsek:

Não entendo a lógica da atribuição de um bilhete. Não é um número sequencial, não é? Parece que o número de ingressos aumenta à medida que avançamos.

Mas como pode ser menos um!!!?

É mostrado como "-1" se a ordem não for acionada. Se a ordem for executada, é dado um número.