O artigo Development of trading system by Fractals indicator Fractals foi publicado:
Autor: Mohamed Abdelmaaboud
Por favor, responda às perguntas.
1. Por que você usa o valor do Fractal na segunda barra fechada? Ela ainda não está formada. Acho que você deveria usar o valor da terceira barra fechada:
CopyBuffer(fracDef,UPPER_LINE,3,1,fracUpArray); CopyBuffer(fracDef,LOWER_LINE,3,1,fracDownArray);
2. Por que você os chama de sistemas de negociação? Eles não fazem negociações. Apenas fazem comentários sobre o gráfico.
2. Por que você os chama de sistemas de negociação? Eles não fazem negociações. Apenas fazem comentários no gráfico.
A vela atual é 0, a anterior é 1 e a terceira é 2, não 3.
Os sistemas de negociação, conforme programados, baseiam-se em etapas sistemáticas e lógicas para ajudá-lo a negociar, mesmo que sejam comentários. Você pode adicionar o envio de ordens se as tiver testado e considerado úteis para você.
Olá, tomei a liberdade de implementar seu exemplo "Fractals_with_Alligator" nas funções fornecidas para essa finalidade (declaração/definição). Por favor, corrija-me se eu estivererrado😊
//criação de matrizes double fracUpArray[]; double fracDownArray[]; MqlRates priceArray[]; double jawsArray[]; double teethArray[]; double lipsArray[]; // init int fracDef; int Data; int alligatorDef; //obter valores double fracUpValue; double fracDownValue; double closingPrice; double jawsValue; double teethValue; double lipsValue; //criação de variáveis bool para receber sinais de compra e venda ao mesmo tempo bool isBuy; bool isSell; int OnInit() { //criação de variáveis bool para receber sinais de compra e venda ao mesmo tempo isBuy = false; isSell = false; ArraySetAsSeries(fracUpArray, true); ArraySetAsSeries(fracDownArray, true); ArraySetAsSeries(jawsArray, true); ArraySetAsSeries(teethArray, true); ArraySetAsSeries(lipsArray, true); fracDef = iFractals(_Symbol, _Period); Data = CopyRates(_Symbol, _Period, 0, 3, priceArray); alligatorDef = iAlligator(_Symbol, _Period, 13, 8, 8, 5, 5, 3, MODE_SMMA,PRICE_MEDIAN); return(INIT_SUCCEEDED); } void OnTick() { CopyBuffer(fracDef, UPPER_LINE, 2, 1, fracUpArray); CopyBuffer(fracDef, LOWER_LINE, 2, 1, fracDownArray); CopyBuffer(alligatorDef, 0, 0, 3, jawsArray); CopyBuffer(alligatorDef, 1, 0, 3, teethArray); CopyBuffer(alligatorDef, 2, 0, 3, lipsArray); //obter valores fracUpValue = NormalizeDouble(fracUpArray[0], 5); fracDownValue = NormalizeDouble(fracDownArray[0], 5); closingPrice = priceArray[0].close; jawsValue = NormalizeDouble(jawsArray[0], 5); teethValue = NormalizeDouble(teethArray[0], 5); lipsValue = NormalizeDouble(lipsArray[0], 5); //condições da estratégia e comentários sobre o gráfico //em caso de compra if(lipsValue>teethValue && lipsValue > jawsValue && teethValue > jawsValue && closingPrice > teethValue && fracDownValue != EMPTY_VALUE) { Comment("Buy", "\n", "jawsValue = ", jawsValue, "\n", "teethValue = ", teethValue, "\n", "lipsValue = ", lipsValue, "\n", "Fractals Low around: ", fracDownValue); isBuy = true; } // fim do if //em caso de venda if(lipsValue < teethValue && lipsValue < jawsValue && teethValue < jawsValue && closingPrice < teethValue && fracUpValue != EMPTY_VALUE) { Comment("Sell", "\n", "jawsValue = ", jawsValue, "\n", "teethValue = ", teethValue, "\n", "lipsValue = ", lipsValue, "\n", "Fractals High around: ", fracUpValue); isSell = true; } // fim do if } void OnDeinit(const int reason) { EventKillTimer(); ObjectsDeleteAll(0,0,-1); IndicatorRelease(fracDef); IndicatorRelease(Data); IndicatorRelease(alligatorDef); ArrayFree(fracUpArray); ArrayFree(fracDownArray); ArrayFree(jawsArray); ArrayFree(teethArray); ArrayFree(lipsArray); Comment(""); }
Olá, obrigado por esse artigo tão claro... Estou recebendo um erro no meu código fractal (2024.11.10 17:42:12.121 _24 Dev 3 EA Strat1 (EURUSD,H1) _24 Dev 3 EA Strat1.mq5:void OnDeinit(const int):OnDeinit:48 Error Code:INDICATOR_DATA_NOT_FOUND ).
Ao executar seu código, recebo o mesmo erro.
Você pode me ajudar? Tentei várias combinações diferentes.
Agradeço o apoio.
Jay
Gostaria de saber se é realmente lucrativo aplicar esse seu sistema?
Implementei fractais/aligantes (usando seus códigos) e minha experiência é que há muitos sinais falsos. O problema geral com os fractais é que estamos 2 velas à frente do sinal do fractal. Estou combinando-o com o RSI (70/30) e outros indicadores para ver se consigo encontrar entradas de boa qualidade.
- Aplicativos de negociação gratuitos
- 8 000+ sinais para cópia
- Notícias econômicas para análise dos mercados financeiros
Você concorda com a política do site e com os termos de uso
Novo artigo Como desenvolver um sistema de negociação baseado no indicador Fractais foi publicado:
Aqui está um novo artigo da nossa série sobre como projetar um sistema de negociação com base nos indicadores técnicos mais populares. Nós aprenderemos um novo indicador que é o indicador Fractais e aprenderemos como desenvolver um sistema de negociação baseado nele para ser executado na plataforma MetaTrader 5.
1. Fractais de alta e baixa
Com base nessa estratégia, nós precisamos criar um sistema de negociação que possa ser usado para retornar as máximas e mínimas do indicador Fractais como um comentário no gráfico, verificando continuamente os valores fracUpvalue e fracDownValue. Se o fracUp for maior que zero ou não tiver um valor vazio e o fracDown tiver um valor vazio, nós precisamos que o sistema de negociação retorne um sinal no gráfico como um comentário com o seguinte valor:
No outro caso, se o fracDown for maior que zero ou não tiver valor vazio e o fracUp tiver um valor vazio, nós precisamos que o sistema de negociação retorne um sinal no gráfico como um comentário com o seguinte valor:
A seguir está o projeto desta estratégia:
Autor: Mohamed Abdelmaaboud