Lizaku: Olá! Existe algum robô baseado em Alligator + EMA (233) + indicador estocástico? Se me puder dar um link . E qual é a sua opinião sobre a estratégia?
A Média Móvel é claramente desnecessária aqui, porque o Jacaré já consiste em três médias móveis. Isso deixa o Alligator + Stochastic:
Como verificar no guião/conselheiro o facto do fim do cálculo do indicador, qual deles é chamado? Até agora tive de pôr Sleep(), mas perdi meio dia sem perceber porque é que os valores em amortecedores são zero...
Aleksey Vyazmikin: Como posso verificar no guião/conselheiro se o cálculo do indicador está terminado e qual deles é chamado? Até agora tive de pôr Sleep(), mas perdi meio dia sem perceber porque é que os valores em amortecedores são zero...
Utilizo o seguinte ciclo
int n = 0;
do
{
// Пытаемся получить нужное значение;if(значение не получено)
{
n++;
Sleep(100);
}
}
while(значение не получено && n < 7 && !IsStopped());
Obrigado. Esperava que houvesse uma ferramenta padrão para isto, só não percebo porque é que os amortecedores devem ser preenchidos com zeros e depois os valores calculados colocados lá - daria um erro de cópia de amortecedor e estaria tudo bem...
Obrigado. Esperava que houvesse uma ferramenta interna para isto, só não está claro porque é que os amortecedores devem ser preenchidos com zeros e depois os valores calculados colocados lá - daria um erro de cópia de amortecedor e isso seria óptimo...
Tenho ferramentas internas, uma vez tentei descobri-lo, mas em vão. Nem me lembro agora em que secção da documentação é mencionado. Algo a ver com sincronização, se bem me lembro.
Boa tarde, estou a escrever um indicador baseado em linhas Bollinger de 5 bandas, como passo final comecei a escrever condições para formar um padrão em relação às linhas indicadoras, mas durante os testes recebo 2 variantes: ou o alerta se fecha de alguma forma, ou não acontece nada. Aqui está um fragmento:
Pode dizer-me o que pode ser consertado aqui, se houver alguma coisa a consertar?
intOnCalculate (constint rates_total, // размер входных таймсерий constint prev_calculated, // обработано баров на предыдущем вызове constdatetime& time[], // Timeconstdouble& open[], // Open constdouble& high[], // High constdouble& low[], // Low constdouble& close[], // Close constlong& tick_volume[], // Tick Volume constlong& volume[], // Real Volume constint& spread[]) // Spread
{
//---- //--- переменныеint pos; // позицияstaticdatetime prevtime = 0;
int shift1;
int shift2;
int shift3;
string pattern, period;
int setPattern = 0;
int alert = 0;
double O, O1, O2, C, C1, C2, L, L1, L2, H, H1, H2;
//----//---- //--- check for bars count - проверка колчества баровif(rates_total<ExtPlotBegin)
return(0);
//--- начало вычисленияif(prev_calculated>1) pos=prev_calculated-1;
else pos=0;
//--- главный циклfor(int i = pos ; i < rates_total;i++)
{
int shift = 0;
shift1 = shift + 1;
shift2 = shift + 2;
shift3 = shift + 3;
O = open[shift1];
O1 = open[shift2];
O2 = open[shift3];
H = high[shift1];
H1 = high[shift2];
H2 = high[shift3];
L = low[shift1];
L1 = low[shift2];
L2 = low[shift3];
C = close[shift1];
C1 = close[shift2];
C2 = close[shift3];
//--- middle line
ExtMLBuffer[i]=SimpleMA(i,ExtBandsPeriod,close);
//--- calculate and write down StdDev
ExtStdDevBuffer[i]=StdDev_Func(i,close,ExtMLBuffer,ExtBandsPeriod);
//--- upper line
ExtTLBuffer[i]=ExtMLBuffer[i]+ExtBandsDeviations*ExtStdDevBuffer[i];
//--- mediumH line
ExtMDHBuffer[i]=ExtMLBuffer[i]+ExtBandsDeviationsM*ExtStdDevBuffer[i];
//--- mediumL line
ExtMDLBuffer[i]=ExtMLBuffer[i]-ExtBandsDeviationsM*ExtStdDevBuffer[i];
//--- lower line
ExtBLBuffer[i]=ExtMLBuffer[i]-ExtBandsDeviations*ExtStdDevBuffer[i];
// Импульсная свеча от нижней границы Боллинджераif(((O <= H) && (H <= ExtMDLBuffer[i])) && ((L >= C) && (C <= ExtBLBuffer[i])))
{
Alert("Pin up!");
PlaySound ("UpperBandAlert.wav");
}
Sleep(5000);
}
//---- OnCalculate done. Return new prev_calculated. Расчет закончен, возврат к новым предыдущим барамreturn(rates_total);
}
//+-
Volume da primeira posição =0,1, último =0,2, como obter o volume da última posição =0,2?
Na conta de cobertura, é este o caso:
double Lot_pos_b()
{
int total=0;
double lot=0;
for(int i=PositionsTotal()-1;i>=0;i--)
if(m_position.SelectByIndex(i)) // selects the position by index for further access to its propertiesif(m_position.Symbol()==m_symbol.Name() && m_position.Magic()==m_magic)
if(m_position.PositionType()==POSITION_TYPE_BUY)
{
lot=m_position.Volume();
}
//---return(lot);
}
Numa conta netting, como é que recebo o lote? esta função devolve 0,3 em vez de 0,2.
Olá! Existe algum robô baseado em Alligator + EMA (233) + indicador estocástico? Se me puder dar um link . E qual é a sua opinião sobre a estratégia?
A Média Móvel é claramente desnecessária aqui, porque o Jacaré já consiste em três médias móveis. Isso deixa o Alligator + Stochastic:
Como posso verificar no guião/conselheiro se o cálculo do indicador está terminado e qual deles é chamado? Até agora tive de pôr Sleep(), mas perdi meio dia sem perceber porque é que os valores em amortecedores são zero...
Utilizo o seguinte ciclo
Eu utilizo um ciclo como este.
Obrigado. Esperava que houvesse uma ferramenta padrão para isto, só não percebo porque é que os amortecedores devem ser preenchidos com zeros e depois os valores calculados colocados lá - daria um erro de cópia de amortecedor e estaria tudo bem...
Obrigado. Esperava que houvesse uma ferramenta interna para isto, só não está claro porque é que os amortecedores devem ser preenchidos com zeros e depois os valores calculados colocados lá - daria um erro de cópia de amortecedor e isso seria óptimo...
Tenho ferramentas internas, uma vez tentei descobri-lo, mas em vão. Nem me lembro agora em que secção da documentação é mencionado. Algo a ver com sincronização, se bem me lembro.
Boa tarde, estou a escrever um indicador baseado em linhas Bollinger de 5 bandas, como passo final comecei a escrever condições para formar um padrão em relação às linhas indicadoras, mas durante os testes recebo 2 variantes: ou o alerta se fecha de alguma forma, ou não acontece nada. Aqui está um fragmento:
Pode dizer-me o que pode ser consertado aqui, se houver alguma coisa a consertar?
Olá.
Volume da primeira posição =0,1, último =0,2, como obter o volume da última posição =0,2?
Na conta de cobertura, é este o caso:
Numa conta netting, como é que recebo o lote? esta função devolve 0,3 em vez de 0,2.Olá.
Volume da primeira posição =0,1, último =0,2, como obter o volume da última posição =0,2?
Numa conta de cobertura, é assim:
Na conta netting, como obter o volume do lote? esta função retorna 0,3 em vez de 0,2.Ver os ofícios pertencentes à posição e ver o seu volume.
Basta imprimir todas as transacções de uma posição (as propriedades de cada posição) - descobrir o que procurar lá.