Alguém sabe como fazer um preço personalizado? Estou usando o seguinte alerta para sinalizar quando o preço (modo de preço interno externo = 6; //(alto+baixo+fechado+fechado)/4) cruza um MA. Eu gostaria de fazer este costume adicionando um offset, digamos 1 ou 2%. Isto é possível? Algo como:
Modo PriceMode int externo = ((alto+baixo+fechado+fechado)/4) * 1.01
vonokpasah: Estou apelando para os especialistas lá fora para por favor me ajudarem. Preciso de alguns para me ajudarem a construir um EXPERT ADVISER META 4 TRADER para mim, eu seria ótimo se meu pedido fosse atendido.
Milhões de maneiras de construir um especialista, em que você estava pensando?
Sempre que coloco isto no testador de estratégia, ele não abre negócios. Uma rápida olhada no diário me diz que houve muitos horários de pedidos feitos. O que eu fiz de errado?
Estou tentando usar um par de indicadores diferentes em uma ea, mas não consigo descobrir como implementá-los no sistema. Que parte do indicador eu uso para dizer comprar ou vender. Como faço para colocar a Slope Direction Line em parte de uma EA.
Estou tentando descobrir o que preciso colocar no iCustom, isto é o que tenho feito abaixo.
duplo SDL=iCustom(NULL,0, "Slope Direction Line",período,método,preço)
E o que eu preciso fazer para gerar sinal de compra e venda do Indicador de Linha de Direção de Talude para minha EA. Abaixo está o que fiz até agora, ele compila, mas nenhuma posição está sendo gerada.
Primeiro, a chamada iCustom precisa de dois argumentos adicionais no final, a saber, qual dos buffers indicadores deve ser lido, e qual índice deve ser lido.
Em segundo lugar, "SDL" é um número duplo, então colocar apenas "SDL" como uma condição mostra alguma confusão; possivelmente ele compila como "SDL != 0", e possivelmente é isso que significa.
Flytox:Não consigo encontrar tal código em minha cópia do TrendStrength.
É a TrendStrength v2.2
Modo de preço personalizado
Alguém sabe como fazer um preço personalizado? Estou usando o seguinte alerta para sinalizar quando o preço (modo de preço interno externo = 6; //(alto+baixo+fechado+fechado)/4) cruza um MA. Eu gostaria de fazer este costume adicionando um offset, digamos 1 ou 2%. Isto é possível? Algo como:
Modo PriceMode int externo = ((alto+baixo+fechado+fechado)/4) * 1.01
----------------------------------------------------
#janela_do_cartão_indicador de propriedade
externo int MA1.período =5; //Período 5
externo int MA1.shift=0;
externo int MA1.method=2; //SMMA
externo int lMA1.price=2; //MA set to candle high
sMA1.price=3; //MA set to candle low
modo PriceMode int externo = 6; //(alto+baixo+fechar+fechar)/4
int cBar,pBarLong,pBarShort;
int start()
{
cBar = Tempo[0];
if(CheckMACross(1)== 1 && cBar!=pBarLong ) {EmailAlert(1); pBarLong=cBar;}
mais
if(CheckMACross(2)==-1 && cBar!=pBarShort) {EmailAlert(2); pBarShort=cBar;}
return(0);
}
int CheckMACross(modo int)
{
if(mode===1) int price = lMA1.price;
senão
if(mode===2) price = sMA1.price;
double price1 = iMA(Symbol(),0,1,0,1,1,PriceMode,1);
double ma1 = iMA(Symbol(),0,MA1.period,MA1.shift,MA1.shift,MA1.method, price,1);
double price0 = iMA(Symbol(),0,1,0,1,0,1,PriceMode,0);
duplo ma0 = iMA(Símbolo(),0,MA1.período,MA1.turno,MA1.método, preço,0);
if(ma1 > preço1 && ma0 <= preço0) retorno( 1);
senão
if(ma1 = preço0) retorno(-1);
senão
retorno(0);
}
{
if(mode == 1) SendMail("Signal for LONG",Symbol()+" Go Long"); //SendMail
senão
if(mode === 2) SendMail("Signal for SHORT",Symbol()+" Go Short");//SendMail
}
int lastBAlert = 0;
int lastSAlert = 0;
void EmailAlert(modo int)
{
if(mode == 2 && lastSAlert < Time[0] )
{
SendMail("Go Short 1",Symbol()+" Go Short 1"); //SendMail
lastSAlert = Tempo[0];
}
}
Estou apelando para os especialistas lá fora para por favor me ajudarem. Preciso de alguns para me ajudarem a construir um EXPERT ADVISER META 4 TRADER para mim, eu seria ótimo se meu pedido fosse atendido.
Milhões de maneiras de construir um especialista, em que você estava pensando?
ajuda do código fonte!
Olá a todos
Tenho um EA e quero acrescentar uma entrada a ele
Se tirar lucro >= :xx , comprar :xx lote
externo int Deltaopen1 =100;
Eu escrevi;
se (tipo == OP_BUY)
{
se (M2.BuyCnt == 0 && OrderTakeProfit() > OrderOpenPrice() + Deltaopen1*point)
{
Buy(Symbol(), GetLots2(), Ask, 0, 0, Magic2);
retornar;
}
}
se (tipo == OP_SELL)
{
if (M2.SellCnt == 0 && OrderTakeProfit() <= OrderOpenPrice() - Deltaopen1*point)
{
Sell(Symbol(), GetLots2(), Bid, 0, 0, Magic2);
retornar;
}
}
}
Mas não funciona,
Agradeço qualquer ajuda.
Obrigado.
Precisa de um pouco de ajuda para refinar esta EA
Eu tenho esta ea que é uma versão modificada da "GAPS EA" encontrada em outro lugar neste fórum.
De qualquer forma, em anexo está uma cópia do código.
#property link ""
//---- input parameters
extern int min_gapsize = 1;
extern double lotsize_gap = 5;
extern int MagicNumber = 10;
//----
datetime order_time = 0;
//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
int init()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
return(0);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
/*
Thing to be done in future in this program to make it more efficient
and more powerful:
1. Make the dicission of the quantity of lots used according to
the scillators;
2. This program will catch the gaps.
Things to ware of:
1. the spread;
2. excuting the order not on the gap ends a little bit less.
*/
// Defining the variables to decide.
Print("order time", order_time);
double current_openprice = iOpen(Symbol(), 0, 0);
double previous_highprice = iHigh(Symbol(), 0, 1);
double previous_lowprice = iLow(Symbol(), 0, 1);
double point_gap = MarketInfo(Symbol(), MODE_POINT);
int spread_gap = MarketInfo(Symbol(), MODE_SPREAD)+1;
datetime current_time = iTime(Symbol(), 0, 0);
// catching the gap on sell upper gap
if(current_openprice > previous_highprice + (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
int ticket = OrderSend(Symbol(), OP_SELL, lotsize_gap, Bid, 0, 0,
previous_highprice + spread_gap,
"Gapped Up Sell " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Red);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (sell) :-)", order_time);
//----
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//catching the gap on buy down gap
if(current_openprice < previous_lowprice - (min_gapsize + spread_gap)*point_gap &&
current_time != order_time)
{
ticket = OrderSend(Symbol(), OP_BUY, lotsize_gap, Ask, 0, 0,
previous_lowprice - spread_gap,
"Gapped Down Buy " + Symbol()+ " " +Period()+ "", MagicNumber, 0, Green);
order_time = iTime(Symbol(), 0, 0);
Print("I am inside (buy) :-)", order_time);
if(ticket < 0)
{
Print("OrderSend failed with error #", GetLastError());
}
}
//----
return(0);
}
//+------------------------------------------------------------------+Sempre que coloco isto no testador de estratégia, ele não abre negócios. Uma rápida olhada no diário me diz que houve muitos horários de pedidos feitos. O que eu fiz de errado?
Ajuda: Pergunta básica do Histograma
Isto provavelmente é muito fácil e estou procurando algo além, mas estou sem recursos e não consigo encontrar uma resposta.
Tudo o que estou tentando fazer é lembrar o valor da barra de histogramas previamente desenhada.
Alguma idéia?
Isto é, Close[1] mostra a última barra fechada no gráfico.....
Então o que mostraria a última barra de histograma desenhada neste indicador de janela separada?
Obrigado por qualquer conselho com antecedência.
-dharsant
Isto provavelmente é muito fácil e eu estou procurando algo além, mas estou sem recursos e não consigo encontrar uma resposta.
Tudo o que estou tentando fazer é lembrar o valor da barra de histogramas previamente desenhada.
Alguma idéia?
Isto é, Close[1] mostra a última barra fechada no gráfico.....
Então o que mostraria a última barra de histograma desenhada neste indicador de janela separada?
Obrigado por qualquer conselho com antecedência.
-dharsantQual indicador você está chamando? Basta definir o turno para ligar para a barra anterior.
Exemplo, para uma média móvel da barra atual:
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,0);
Para uma média móvel anterior da barra:
iMA(NULL,0,13,8,MODE_SMMA,PRICE_MEDIAN,1);
O último parâmetro ao chamar um indicador significa quantas barras da corrente serão lidas.
Espero que isto seja o que você estava procurando.
Ajuda para a codificação necessária, por favor
Estou tentando usar um par de indicadores diferentes em uma ea, mas não consigo descobrir como implementá-los no sistema. Que parte do indicador eu uso para dizer comprar ou vender. Como faço para colocar a Slope Direction Line em parte de uma EA.
Saúde
Beno
Eu provavelmente não me expliquei muito bem.
Estou tentando descobrir o que preciso colocar no iCustom, isto é o que tenho feito abaixo.
duplo SDL=iCustom(NULL,0, "Slope Direction Line",período,método,preço)
E o que eu preciso fazer para gerar sinal de compra e venda do Indicador de Linha de Direção de Talude para minha EA. Abaixo está o que fiz até agora, ele compila, mas nenhuma posição está sendo gerada.
bool Long = TML && SDL && HeikenAshiOpen < HeikenAshiClose && hasOpen < hasClose;
bool Short = TMS && SDL && HeikenAshiOpen > HeikenAshiClose && hasOpen > hasClose;
Qualquer ajuda seria ótima
Abraço
Beno
Primeiro, a chamada iCustom precisa de dois argumentos adicionais no final, a saber, qual dos buffers indicadores deve ser lido, e qual índice deve ser lido.
Em segundo lugar, "SDL" é um número duplo, então colocar apenas "SDL" como uma condição mostra alguma confusão; possivelmente ele compila como "SDL != 0", e possivelmente é isso que significa.