명시
Hello I need you to fix this 2 OSMA indicators into Icustom indicator. I have used the OsMA xb4 and osma color (mtf + alerts) to created the Icustom but it did not work . so I want you to fix .
See attached the original MQL4 file used to create the above icustoms . I have added all of them so that you review eberything your self. If you need any additional information please do not hesitate to let me know. Thank you.
The first i did is for OsMA xb4
//+------------------------------------------------------------------+ //| Indicator: OSMA.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 "OsMA Color xb4" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_separate_window #property indicator_buffers 4 #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" #property indicator_type3 DRAW_ARROW #property indicator_width3 1 #property indicator_color3 0xFFAA00 #property indicator_label3 "Buy" #property indicator_type4 DRAW_ARROW #property indicator_width4 1 #property indicator_color4 0x0000FF #property indicator_label4 "Sell" //--- indicator buffers double Buffer1[]; double Buffer2[]; double Buffer3[]; double Buffer4[]; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | OSMA @ "+Symbol()+","+IntegerToString(Period())+" | "+message); } else if(type == "order") { } else if(type == "modify") { } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(4); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexArrow(1, 242); SetIndexBuffer(2, Buffer3); SetIndexEmptyValue(2, EMPTY_VALUE); SetIndexArrow(2, 241); SetIndexBuffer(3, Buffer4); SetIndexEmptyValue(3, EMPTY_VALUE); SetIndexArrow(3, 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); ArraySetAsSeries(Buffer3, true); ArraySetAsSeries(Buffer4, true); //--- initial zero if(prev_calculated < 1) { ArrayInitialize(Buffer1, EMPTY_VALUE); ArrayInitialize(Buffer2, EMPTY_VALUE); ArrayInitialize(Buffer3, EMPTY_VALUE); ArrayInitialize(Buffer4, 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, "OsMA Color xb4", 12, 26, 9, 0, i) == 1 && iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 0, i) != EMPTY_VALUE //OsMA Color xb4 is not equal to fixed value ) { Buffer1[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer1[i] = EMPTY_VALUE; } //Indicator Buffer 2 if(iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 2, i) == 1 && iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 2, i) != EMPTY_VALUE //OsMA Color xb4 is not equal to fixed value ) { Buffer2[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer2[i] = EMPTY_VALUE; } //Indicator Buffer 3 if(iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 1, i) == 1 && iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 1, i) != EMPTY_VALUE //OsMA Color xb4 is not equal to fixed value ) { Buffer3[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer3[i] = EMPTY_VALUE; } //Indicator Buffer 4 if(iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 3, i) == 1 && iCustom(NULL, PERIOD_CURRENT, "OsMA Color xb4", 12, 26, 9, 3, i) != EMPTY_VALUE //OsMA Color xb4 is not equal to fixed value ) { Buffer4[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer4[i] = EMPTY_VALUE; } } return(rates_total); } //+------------------------------------------------------------------+
The second one I did is for osma color (mtf + alerts)
//+------------------------------------------------------------------+ //| Indicator: OSMA.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 "osma color (mtf + alerts)" #include <stdlib.mqh> #include <stderror.mqh> //--- indicator settings #property indicator_separate_window #property indicator_buffers 4 #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" #property indicator_type3 DRAW_ARROW #property indicator_width3 1 #property indicator_color3 0xFFAA00 #property indicator_label3 "Buy" #property indicator_type4 DRAW_ARROW #property indicator_width4 1 #property indicator_color4 0x0000FF #property indicator_label4 "Sell" //--- indicator buffers double Buffer1[]; double Buffer2[]; double Buffer3[]; double Buffer4[]; double myPoint; //initialized in OnInit void myAlert(string type, string message) { if(type == "print") Print(message); else if(type == "error") { Print(type+" | OSMA @ "+Symbol()+","+IntegerToString(Period())+" | "+message); } else if(type == "order") { } else if(type == "modify") { } } //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int OnInit() { IndicatorBuffers(4); SetIndexBuffer(0, Buffer1); SetIndexEmptyValue(0, EMPTY_VALUE); SetIndexArrow(0, 241); SetIndexBuffer(1, Buffer2); SetIndexEmptyValue(1, EMPTY_VALUE); SetIndexArrow(1, 242); SetIndexBuffer(2, Buffer3); SetIndexEmptyValue(2, EMPTY_VALUE); SetIndexArrow(2, 241); SetIndexBuffer(3, Buffer4); SetIndexEmptyValue(3, EMPTY_VALUE); SetIndexArrow(3, 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); ArraySetAsSeries(Buffer3, true); ArraySetAsSeries(Buffer4, true); //--- initial zero if(prev_calculated < 1) { ArrayInitialize(Buffer1, EMPTY_VALUE); ArrayInitialize(Buffer2, EMPTY_VALUE); ArrayInitialize(Buffer3, EMPTY_VALUE); ArrayInitialize(Buffer4, 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, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 0, i) != 0 && iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 0, i) != EMPTY_VALUE //osma color (mtf + alerts) is not equal to fixed value ) { Buffer1[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer1[i] = EMPTY_VALUE; } //Indicator Buffer 2 if(iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 2, i) != 0 && iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 2, i) != EMPTY_VALUE //osma color (mtf + alerts) is not equal to fixed value ) { Buffer2[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer2[i] = EMPTY_VALUE; } //Indicator Buffer 3 if(iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 1, i) != 0 && iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 1, i) != EMPTY_VALUE //osma color (mtf + alerts) is not equal to fixed value ) { Buffer3[i] = Low[i]; //Set indicator value at Candlestick Low } else { Buffer3[i] = EMPTY_VALUE; } //Indicator Buffer 4 if(iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 3, i) != 0 && iCustom(NULL, PERIOD_CURRENT, "osma color (mtf + alerts)", PERIOD_CURRENT, 12, 4, 26, 4, 9, 1, true, false, true, false, false, false, "alert2.wav", true, 3, i) != EMPTY_VALUE //osma color (mtf + alerts) is not equal to fixed value ) { Buffer4[i] = High[i]; //Set indicator value at Candlestick High } else { Buffer4[i] = EMPTY_VALUE; } } return(rates_total); } //+------------------------------------------------------------------+
응답함
1
등급
프로젝트
1390
67%
중재
117
32%
/
42%
기한 초과
215
15%
무료
2
등급
프로젝트
1419
62%
중재
21
57%
/
10%
기한 초과
43
3%
무료
3
등급
프로젝트
17
41%
중재
3
0%
/
100%
기한 초과
3
18%
무료
4
등급
프로젝트
96
24%
중재
9
22%
/
22%
기한 초과
12
13%
작업중
5
등급
프로젝트
157
36%
중재
4
25%
/
50%
기한 초과
13
8%
작업중
6
등급
프로젝트
399
54%
중재
9
67%
/
22%
기한 초과
36
9%
무료
비슷한 주문
Convert tradingview strategy to MT4
30 - 35 USD
Hello .I have existing Tradingview strategy that I will like to automate to Mt4 EA based on my specification . I need an expert in the field that have experience in both tradingview and MT4
Deriv bot DIGIT MATCH
30 USD
I want a developer who is an expert in deriv https://youtu.be/2euVfXYkrmE?feature=shared DIGIT MATCH bot I want a profitable robot I want a developer to do this task for me I want a developer who has experience in this
Build nt8 indicator
30+ USD
my style of trade is to manually scale position size up & down from 1 to 100+ micros as the market moves, so the indicator I need has nothing to do with scaling in & out of the position, but I need an indicator that dynamically trails the position P&L, And has a trailing daily max loss that will reject new order entry if triggered. Example is setting a $350 Position auto stop-loss so as I scale in & out of contracts
Hi, i have a simple strategy which has 4 different types of entries based on parabolic sar and moving average that I would like to be coded into an EA. I would also like some inputs for it like news filter, time start and time end, risk % and so on. Will discuss further upon application
Hey there, I need to convert an indicator from ninja to mt4 I will attach the ninjatrader indicator script to be converted into mt4 If you can do this kindly bid and let's discuss about the project Thanks
Hi, I need to add a module to existing EA to enalbe it to buy and sell baskest of stocks and indicies. What I need: - synthetic chart in MT5 of e.g. combination of 2 long stocks and 5 shorted stocks. I need to be able to easily create new charts of the mixes of stocks / indicies. - matrix / panel of the chosen stocks' CFDs which tickers one will choose from the Symbol list (at particular broker symbol list) - adding
Tradingview and python project
50 - 100 USD
Looking for a well versed Tradingview and python expert with good reviews to take up this project I have multiple watchlists with 10-50 stocks in each watchlist I have an indicator (pine script ) Plus 2-3 other parameters can we code an indicator or a system in python or wherever , giving alert every 15 mins and scanning for all buy signals every 15 mins ?? any platform .. python / excel / vb/ trading view
I need a trading indicator that will give 1 minute and 5 minute accurate signals for only EURUSD pair. the indicator is to be used for Binary options so it has to perform exceptionally
Converting tradingview to nt8
30+ USD
Hi there Here is a video of the logic: its based on market structure and swings using validated highs and lows based on candle closure. Just in case you would like to take a look at the code/indicator here is the link: https://youtu.be/igj0OaQoM7o?si=7nigL8OU2Nt1Zxkx Let me know if you can help
Create MT5 deriv EA
30 - 35 USD
Hello . Am in need of a developer that can Create deriv EA .I need to create a Deriv Bot with Martingale 1 min candles 30 martingale plus I can change the amount of martigale with the option of 1 min up or down . Kindly bid and let discuss about the project
프로젝트 정보
예산
30+ USD
개발자에게
27
USD