| Coding Forum Collaborate, receive help, or discuss coding related issues. |
![]() | | Tweet | |
| | #1 | ||
![]() | Help with Some Lin Reg Curve Color Coding - MQL4 to TS I am hoping someone with some C or MQL4 coding savvy can help me. I have some color coding in an indicator written in MQL4 (which is supposed to be like C) that I am trying to apply to my TS indicator. I have some skill in TS indicator coding and can do that part, if someone can help me understand the MQL4 logic. The indicator in MQL4 is 'Least Squares Moving Average' which is identical on a chart to TS 'Linear Regression Curve.' My TS version (MultiCharts, actually) is one color. The MQL4 version has a very nice 3 color appearance that I find very useful. However, I can't make heads or tails of the code. I would appreciate GREATLY if some real programmer out there can translate the color coding part of the following code into normal logic statements or pseudo-code for me. I can take it from there. I assume I"ll be able to apply it to the TS LRC indicator simply enough, if I can just understand the logic. I will be happy to share the indicator with the forum once it's done, if anyone is interested in it. I've attached a picture of the indicator. You can see the 3 color logic I'm talking about. Many Thanks for the help, Scott Here is the MQL4 code: //+------------------------------------------------------------------+ //| | //| Copyright © 2004, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #property copyright "Copyright © 2005, FX Sniper " #property link "http://www.metaquotes.net/" //---- indicator settings #property indicator_chart_window #property indicator_buffers 3 #property indicator_color1 Yellow #property indicator_color2 Green #property indicator_color3 Red //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; int width; extern int Rperiod = 34; extern int Draw4HowLongg = 1500; int Draw4HowLong; int shift; int i; int loopbegin; double sum[]; int length; double lengthvar; double tmp ; double wt[]; int c; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- 2 additional buffers are used for counting. IndicatorBuffers(5); //---- drawing settings SetIndexBuffer(2,ExtMapBu ffer1); SetIndexBuffer(1,ExtMapBu ffer2); SetIndexBuffer(0,ExtMapBu ffer3); SetIndexBuffer(3,sum); SetIndexBuffer(4,wt); SetIndexStyle(2,DRAW_LINE ,STYLE_SOLID,2); SetIndexStyle(1,DRAW_LINE ,STYLE_SOLID,2); SetIndexStyle(0,DRAW_LINE ,STYLE_SOLID,2); //---- initialization done return(0); } int start() { Draw4HowLong = Bars-Rperiod - 5; length = Rperiod; loopbegin = Draw4HowLong - length - 1; for(shift = loopbegin; shift >= 0; shift--) { sum[1] = 0; for(i = length; i >= 1 ; i--) { lengthvar = length + 1; lengthvar /= 3; tmp = 0; tmp = ( i - lengthvar)*Close[length-i+shift]; sum[1]+=tmp; } wt[shift] = sum[1]*6/(length*(length+1)); //========== COLOR CODING ========================= ================== ExtMapBuffer3[shift] = wt[shift]; //red ExtMapBuffer2[shift] = wt[shift]; //green ExtMapBuffer1[shift] = wt[shift]; //yellow // for(c=loopbegin;c==shift; c++) // { if (wt[shift+1] > wt[shift]) { ExtMapBuffer2[shift+1] = EMPTY_VALUE; // ObjectCreate("smiley_face ", OBJ_ARROW, 0, Time[shift], Low[shift]-Point*20); // Print("time= ",Time[shift]); // ObjectSet("smiley_face", OBJPROP_ARROWCODE, 242); // ObjectSet("smiley_face", OBJPROP_COLOR , Red); // ObjectSet("smiley_face", OBJPROP_WIDTH , 1); // ObjectsRedraw(); //ExtMapBuffer3[shift+1] = EMPTY_VALUE; //ExtMapBuffer3[shift+1] = EMPTY_VALUE; } else if (wt[shift+1] < wt[shift]) { ExtMapBuffer1[shift+1] = EMPTY_VALUE; //-1 red/greem tight //ExtMapBuffer3[shift+1] = EMPTY_VALUE; } else { ExtMapBuffer1[shift+1]=CLR_NONE;//EMPTY_VALUE; ExtMapBuffer2[shift+1]=CLR_NONE;//EMPTY_VALUE; } } return(0); } //+------------------------------------------------------------------+ | ||
| |
|
| | #2 | ||
![]() | Re: Help with Some Lin Reg Curve Color Coding - MQL4 to TS Scott | ||
| |
|
| The Following User Says Thank You to turboscottomatic For This Useful Post: | ||
thrunner (03-03-2008) | ||
| | #3 | ||
![]() | Re: Help with Some Lin Reg Curve Color Coding - MQL4 to TS | ||
| |
|
| | #4 | ||
![]() | Re: Help with Some Lin Reg Curve Color Coding - MQL4 to TS You say it cant be done, how do you think he has done it? Thanks h**p://www.viperspeedtrader.com/DayTrading_ZigZag_Indicat or_1.html | ||
| |
|
![]() |
| Thread Tools | |
| Display Modes | Help Others By Rating This Thread |
| |
| ∧ Similar Threads | ||||
| Thread | Thread Starter | Forum | Replies | Last Post |
| Coding for Sierra Charts | mishnas | Coding Forum | 22 | 06-23-2009 11:16 PM |
| TICK Coding Help | Soultrader | Coding Forum | 19 | 04-06-2009 02:28 AM |
| lomb periodogram indicator coding | val2004 | Coding Forum | 0 | 09-13-2007 03:36 AM |
| Coding Help | waveslider | Coding Forum | 1 | 08-03-2007 04:48 PM |
| [VSA] Coding | TinGull | Coding Forum | 2 | 03-18-2007 01:05 PM |