İş tamamlandı
Tamamlanma süresi: 1 saat
Geliştirici tarafından geri bildirim
Best Wishes...
Müşteri tarafından geri bildirim
Excellent job! well done and executed ...very fast and same day delivery...infact 1 hour delivery...even help with installation...will use you again...thank you
İş Gereklilikleri
Hello I need you to fix this indicators code to display the arrows according to the main indicator. I have atachhed the icustom code and the main indicaction in mql4 file.
The first indictor is StockRSI...I created the icustom code but its not working see the icustom code below:
//+------------------------------------------------------------------+ //| Indicator: Fixa.mq4 | //| Created with EABuilder.com | //| https://www.eabuilder.com | //+------------------------------------------------------------------+ #property copyright "Created with EABuilder.com" #property link "https://www.eabuilder.com" #property version "1.00" #property description "" #property tester_indicator "Stoch RSI" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_chart_window #property indicator_buffers 2 #property indicator_type1 DRAW_ARROW #property indicator_width1 1 #property indicator_color1 0xFFAA00 #property indicator_label1 "Buy" #property indicator_type2 DRAW_ARROW #property indicator_width2 1 #property indicator_color2 0x0000FF #property indicator_label2 "Sell" //--- indicator buffers double Buffer1[]; double Buffer2[]; extern int InpStockKPeriod = 3; extern int InpStockDPeriod = 3; extern int InpRSIPeriod = 14; extern int InpStochastikPeriod = 14; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | Fixa @ "+Symbol()+","+IntegerToString(Period())+" | "+message); } else if(type == "order") { } else if(type == "modify") { } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(2); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexArrow(1, 242); //initialize myPoint myPoint = Point(); if(Digits() == 5 || Digits() == 3) { myPoint *= 10; } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| 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[]) { int limit = rates_total - prev_calculated; //--- counting from 0 to rates_total ArraySetAsSeries(Buffer1, true); ArraySetAsSeries(Buffer2, true); //--- initial zero if(prev_calculated < 1) { ArrayInitialize(Buffer1, EMPTY_VALUE); ArrayInitialize(Buffer2, EMPTY_VALUE); } else limit++; //--- main loop for(int i = limit-1; i >= 0; i--) { if (i >= MathMin(5000-1, rates_total-1-50)) continue; //omit some old rates to prevent "Array out of range" or slow calculation //Indicator Buffer 1 if(iCustom(NULL, PERIOD_CURRENT, "Stoch RSI", InpStockKPeriod, InpStockDPeriod, InpRSIPeriod, InpStochastikPeriod, PRICE_CLOSE, 0, i) > iCustom(NULL, PERIOD_CURRENT, "Stoch RSI", InpStockKPeriod, InpStockDPeriod, InpRSIPeriod, InpStochastikPeriod, PRICE_CLOSE, 1, i) //Stoch RSI > Stoch RSI ) { Buffer1[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer1[i] = EMPTY_VALUE; } //Indicator Buffer 2 if(iCustom(NULL, PERIOD_CURRENT, "Stoch RSI", InpStockKPeriod, InpStockDPeriod, InpRSIPeriod, InpStochastikPeriod, PRICE_CLOSE, 0, i) < iCustom(NULL, PERIOD_CURRENT, "Stoch RSI", InpStockKPeriod, InpStockDPeriod, InpRSIPeriod, InpStochastikPeriod, PRICE_CLOSE, 1, i) //Stoch RSI < Stoch RSI ) { Buffer2[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer2[i] = EMPTY_VALUE; } } return(rates_total); } //+------------------------------------------------------------------+
The second iindictor is fractal-adaptive-moving-average...I created the icustom code but its not working see the icustom code below:
//+------------------------------------------------------------------+ //| Indicator: Fixa2.mq4 | //| Created with EABuilder.com | //| https://www.eabuilder.com | //+------------------------------------------------------------------+ #property copyright "Created with EABuilder.com" #property link "https://www.eabuilder.com" #property version "1.00" #property description "" #property tester_indicator "fractal-adaptive-moving-average" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_chart_window #property indicator_buffers 2 #property indicator_type1 DRAW_ARROW #property indicator_width1 1 #property indicator_color1 0xFFAA00 #property indicator_label1 "Buy" #property indicator_type2 DRAW_ARROW #property indicator_width2 1 #property indicator_color2 0x0000FF #property indicator_label2 "Sell" //--- indicator buffers double Buffer1[]; double Buffer2[]; extern int RPeriod = 16; extern double multiplier = 4.6; extern double signal_multiplier = 2.5; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | Fixa @ "+Symbol()+","+IntegerToString(Period())+" | "+message); } else if(type == "order") { } else if(type == "modify") { } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(2); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexArrow(1, 242); //initialize myPoint myPoint = Point(); if(Digits() == 5 || Digits() == 3) { myPoint *= 10; } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| 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[]) { int limit = rates_total - prev_calculated; //--- counting from 0 to rates_total ArraySetAsSeries(Buffer1, true); ArraySetAsSeries(Buffer2, true); //--- initial zero if(prev_calculated < 1) { ArrayInitialize(Buffer1, EMPTY_VALUE); ArrayInitialize(Buffer2, EMPTY_VALUE); } else limit++; //--- main loop for(int i = limit-1; i >= 0; i--) { if (i >= MathMin(5000-1, rates_total-1-50)) continue; //omit some old rates to prevent "Array out of range" or slow calculation //Indicator Buffer 1 if(iCustom(NULL, PERIOD_CURRENT, "fractal-adaptive-moving-average", RPeriod, multiplier, signal_multiplier, 0, i) > iCustom(NULL, PERIOD_CURRENT, "fractal-adaptive-moving-average", RPeriod, multiplier, signal_multiplier, 1, i) //fractal-adaptive-moving-average > fractal-adaptive-moving-average ) { Buffer1[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer1[i] = EMPTY_VALUE; } //Indicator Buffer 2 if(iCustom(NULL, PERIOD_CURRENT, "fractal-adaptive-moving-average", RPeriod, multiplier, signal_multiplier, 0, i) < iCustom(NULL, PERIOD_CURRENT, "fractal-adaptive-moving-average", RPeriod, multiplier, signal_multiplier, 1, i) //fractal-adaptive-moving-average < fractal-adaptive-moving-average ) { Buffer2[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer2[i] = EMPTY_VALUE; } } return(rates_total); } //+------------------------------------------------------------------+
The last indictor is Fractal_Bands...I created the icustom code but its not working see the icustom code below:
//+------------------------------------------------------------------+ //| Indicator: Fixa.mq4 | //| Created with EABuilder.com | //| https://www.eabuilder.com | //+------------------------------------------------------------------+ #property copyright "Created with EABuilder.com" #property link "https://www.eabuilder.com" #property version "1.00" #property description "" #property tester_indicator "fractal-bands" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_separate_window #property indicator_buffers 2 #property indicator_type1 DRAW_ARROW #property indicator_width1 1 #property indicator_color1 0xFFAA00 #property indicator_label1 "Buy" #property indicator_type2 DRAW_ARROW #property indicator_width2 1 #property indicator_color2 0x0000FF #property indicator_label2 "Sell" //--- indicator buffers double Buffer1[]; double Buffer2[]; extern int e_period = 30; extern int normal_speed = 30; extern double alpha = 2.0; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | Fixa @ "+Symbol()+","+IntegerToString(Period())+" | "+message); } else if(type == "order") { } else if(type == "modify") { } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(2); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexArrow(1, 242); //initialize myPoint myPoint = Point(); if(Digits() == 5 || Digits() == 3) { myPoint *= 10; } return(INIT_SUCCEEDED); } //+------------------------------------------------------------------+ //| 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[]) { int limit = rates_total - prev_calculated; //--- counting from 0 to rates_total ArraySetAsSeries(Buffer1, true); ArraySetAsSeries(Buffer2, true); //--- initial zero if(prev_calculated < 1) { ArrayInitialize(Buffer1, EMPTY_VALUE); ArrayInitialize(Buffer2, EMPTY_VALUE); } else limit++; //--- main loop for(int i = limit-1; i >= 0; i--) { if (i >= MathMin(5000-1, rates_total-1-50)) continue; //omit some old rates to prevent "Array out of range" or slow calculation //Indicator Buffer 1 if(Close[i] > iCustom(NULL, PERIOD_CURRENT, "fractal-bands", e_period, normal_speed, alpha, 0, PRICE_CLOSE, 0, i) //Candlestick Close > fractal-bands ) { Buffer1[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer1[i] = EMPTY_VALUE; } //Indicator Buffer 2 if(Close[i] < iCustom(NULL, PERIOD_CURRENT, "fractal-bands", e_period, normal_speed, alpha, 0, PRICE_CLOSE, 0, i) //Candlestick Close < fractal-bands ) { Buffer2[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer2[i] = EMPTY_VALUE; } } return(rates_total); } //+------------------------------------------------------------------+
see below all indicators mql4 files.
Please let me know if this something you can do. you can even go ahead do it, send me screen short or ex4 file to check. if everything is okay, then we can conclude fast.
Yanıtlandı
1
Derecelendirme
Projeler
416
30%
Arabuluculuk
74
19%
/
72%
Süresi dolmuş
52
13%
Çalışıyor
2
Derecelendirme
Projeler
692
34%
Arabuluculuk
34
68%
/
9%
Süresi dolmuş
22
3%
Çalışıyor
3
Derecelendirme
Projeler
29
45%
Arabuluculuk
0
Süresi dolmuş
1
3%
Serbest
4
Derecelendirme
Projeler
102
23%
Arabuluculuk
12
25%
/
17%
Süresi dolmuş
13
13%
Serbest
5
Derecelendirme
Projeler
146
34%
Arabuluculuk
13
8%
/
62%
Süresi dolmuş
26
18%
Serbest
Yayınlandı: 6 kod
6
Derecelendirme
Projeler
81
11%
Arabuluculuk
12
67%
/
25%
Süresi dolmuş
5
6%
Serbest
Yayınlandı: 14 makale, 6 kod
7
Derecelendirme
Projeler
46
28%
Arabuluculuk
9
0%
/
100%
Süresi dolmuş
7
15%
Serbest
Benzer siparişler
Robot Requirements Specification
30 - 100 USD
step by step and structure this into a full IEEE 830 / ISO/IEC/IEEE 29148 style Requirements Specification. This format will include: Introduction System Overview Functional and Performance Requirements Traceability Matrix (linking requirements to test cases) Verification and Validation Compliance Standards 1. Introduction 1.1 Purpose The purpose of this document is to define the technical requirements for the
Ninjatrader strategy develop
30+ USD
i need an expert to help join 3 model i have in ninjatrader into one, kindly message me and i will be expecting from you and i need this work done in maximum of 4 days, so i need expert that can get it done
Henryy999
30 - 3000 USD
The Ai robot must help me with forex and I don't have money soon can the Ai robot give me some money and I will pay it back if the Ai robot does a good job making me rich
Strategy Development: Suggest a high-probability trading strategy based on Technical Analysis (using indicators like RSI, MACD, or Price Action). Risk Management: Explain how to calculate position sizing so I don't lose more than 1-2% of my capital per trade. Market Analysis: Teach me how to identify Support and Resistance levels and how to spot a trend reversal. Psychology: Give me 5 golden rules to maintain
MQL5 Expert Advisor Development (MT5) I need a professional MQL5 developer to create a custom Expert Advisor (EA) for MetaTrader 5 with high accuracy, low drawdown, and fast execution . 🔹 Strategy Requirements: Timeframe: Scalping-friendly (M1 / M5) Indicators Used: EMA 9 EMA 12 EMA 21 VWAP (as a trend filter) RSI (for trade confirmation) 🔹 Trade Logic: Buy and Sell entries based on EMA crossover + VWAP direction
Monthly >Previous month High and Low.High is Resistance and Low is Support level Daily > Demand and supply zones. Demand Below Support Level and Supply Above Resistance Level. 4HOUR >Up-Tren,Down-Trend and Cosolodation >Market Structure CHOCH,BOS >3 phase movement HH,HL and LL,LH. Entry
SpikeEnginePro EA
30+ USD
// Add this to your EA after ExportState() function void SendToBase44(const string state, const string dir, double entry, double sl, double tp) { string url = " https://preview-sandbox--ee0a32a725b788974de435e8cef40b7a.base44.app/api/functions/receiveEAState "; string headers = "Content-Type: application/json\r\n"; string json = "{" "\"symbol\":\""+_Symbol+"\","
Hello! I am looking for an experienced, top-rated developer to build highly profitable strategy software that provides accurate signals for both long-term and short-term trades. The software must analyse the market correctly, indicating when to enter and where to set Take Profit (TP) and Stop Loss (SL) levels. It must deliver accurate results across all markets, including Forex, cryptocurrencies, metals, indices, and
Create The Profitunity System Trading
200 - 500 USD
For only developer who understand Chaos/ Profiunity trading system by Bill WIlliams, Create The Profitunity System Trading based on Bill Williams Chaos theory, Trade based on Trend Affirmation in Daily, entry in H4, using Williams Fractal, Williams Alligator, Awesome Oscillator, Accelerator Oscillator, Market Facilitation Index. Balance Line, entry on Reversal, add on while market show continuation sign. Please quote
1.Sinyal Perdagangan : Sinyal beli: garis MACD utama memotong garis sinyal ke atas (macd_current>signal_current && macd_previous<signal_previous). Sinyal jual: garis MACD utama memotong garis sinyal ke bawah (macd_current<signal_current && macd_previous>signal_previous). Gambar di bawah menunjukkan kasus beli dan jual. 2. Posisi ditutup pada sinyal yang berlawanan: Posisi beli ditutup pada sinyal jual, dan posisi
Proje bilgisi
Bütçe
30+ USD