Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

derek2209

Convert MT4 Indicator into Tradestation

Recommended Posts

Hi,

 

Could you please help me to convert the Turbo_JRSX.mq4 code below into

Tradestation Easylanguage.

 

Thank you in advance

 

Derek

 

---------------------------------------------------------------------------

 

http://www.mql5.com/en/code/viewcode/7900/44457/Turbo_JRSX.mq4

 



//+------------------------------------------------------------------+
//|                                                                  |
//|                 Copyright © 1999-2007, MetaQuotes Software Corp. |
//|                                         http://www.metaquotes.ru |
//+------------------------------------------------------------------+
#property copyright "strategybuilderfx.com - modified by bluto to use typical price (HLC/3)"
#property link "finger"
//----
#property indicator_separate_window
#property indicator_buffers 1
#property indicator_color1 Magenta
#property indicator_level1 70
#property indicator_level2 30
#property indicator_level3 50
#property indicator_maximum 100
#property indicator_minimum 0
//---- input parameters
extern int Len=14; //---- buffers
double rsx[];
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
 int init() 
 {
  SetIndexStyle(0,DRAW_LINE);
  SetIndexBuffer(0,rsx);
  IndicatorShortName("Turbo_JRSX");
  return(0);
 }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int deinit()
 {
  return(0);
 }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int start()
 {
  double f88, f90;
  double f0, v4, v8, vC, v10, v14, v18, v20;
  double f8, f10, f18, f20, f28, f30, f38, f48, v1C;
  double f50, f58, f60, f68, f70, f78, f80, f40;
  //int counted_bars = IndicatorCounted(),limit,shift;
  //if (counted_bars<0) return(-1);
  //if (counted_bars>0) counted_bars--;
  double limit=Bars-(Len)-1;
  //if(counted_bars>Len) limit=Bars-counted_bars-1;
    for(int shift=limit;shift>=0;shift--) 
    {
       if (f90==0.0) 
       {
        f90=1.0;
        f0=0.0;
        if (Len-1>=5) f88=Len-1.0; else f88=5.0;
        //      f8 = 100.0*(Close[shift]);
        // 
        //      Modified for median price
        //
        f8=100.0*((High[shift]+Low[shift]+Close[shift])/3);
        f18=3.0/(Len + 2.0);
        f20=1.0 - f18;
        }
         else
        {
        if (f88<=f90) f90=f88 + 1; else f90=f90 + 1;
        f10=f8;
        //      f8 = 100*Close[shift];
        f8=100.0*((High[shift]+Low[shift]+Close[shift])/3);
        v8=f8 - f10;
        f28=f20 * f28 + f18 * v8;
        f30=f18 * f28 + f20 * f30;
        vC=f28 * 1.5 - f30 * 0.5;
        f38=f20 * f38 + f18 * vC;
        f40=f18 * f38 + f20 * f40;
        v10=f38 * 1.5 - f40 * 0.5;
        f48=f20 * f48 + f18 * v10;
        f50=f18 * f48 + f20 * f50;
        v14=f48 * 1.5 - f50 * 0.5;
        f58=f20 * f58 + f18 * MathAbs(v8);
        f60=f18 * f58 + f20 * f60;
        v18=f58 * 1.5 - f60 * 0.5;
        f68=f20 * f68 + f18 * v18;
        f70=f18 * f68 + f20 * f70;
        v1C=f68 * 1.5 - f70 * 0.5;
        f78=f20 * f78 + f18 * v1C;
        f80=f18 * f78 + f20 * f80;
        v20=f78 * 1.5 - f80 * 0.5;
//----
        if ((f88>=f90) && (f8!=f10)) f0=1.0;
        if ((f88==f90) && (f0==0.0)) f90=0.0;
       }
       if ((f88 < f90) && (v20 > 0.0000000001)) 
       {
        v4=(v14/v20 + 1.0) * 50.0;
        if (v4 > 100.0) v4=100.0;
        if (v4 < 0.0) v4=0.0;
        }
         else 
        {
        v4=50.0;
       }
     rsx[shift]=v4;
    }
//----
  return(0);
 }
//+------------------------------------------------------------------+

Share this post


Link to post
Share on other sites

Close Not tested or compiled!, needs some cleaning up work! Compare MQ4 numbers and match them to Tradestation then repost corrected code if need be!

Using elsystem;
inputs:
	int Len(14);

variables:
	double rsx(0),
	double f90(0),
	double f0(0),
	double f88(0),
	double f8(0),
	double f18(0),
	double f20(0),
	double f10(0),
	double v8(0),
	double f28(0),
	double f30(0),
	double vC(0),
	double f38(0),
	double f40(0),
	double v10(0),
	double f48(0),
	double f50(0),
	double v14(0),
	double f58(0),
	double f60(0),
	double v18(0),
	double f68(0),
	double f70(0),
	double v1C(0),
	double f78(0),
	double f80(0),
	double v20(0),
	double v4(0);

IF f90 = 0.0 THEN BEGIN
    f90 = 1.0;
    f0 = 0.0;
    IF Len - 1 >= 5 THEN f88 = Len - 1.0
    ELSE f88 = 5.0;
    f8 = 100.0 * ((High + Low + Close) / 3);
    f18 = 3.0 / (Len + 2.0){WARNING:Possible division by zero};
    f20 = 1.0 - f18;
END
ELSE BEGIN
    IF f88 <= f90 THEN f90 = f88 + 1
    ELSE f90 = f90 + 1;
    f10 = f8;
    f8 = 100.0 * ((High + Low + Close) / 3);
    v8 = f8 - f10;
    f28 = f20 * f28 + f18 * v8;
    f30 = f18 * f28 + f20 * f30;
    vC = f28 * 1.5 - f30 * 0.5;
    f38 = f20 * f38 + f18 * vC;
    f40 = f18 * f38 + f20 * f40;
    v10 = f38 * 1.5 - f40 * 0.5;
    f48 = f20 * f48 + f18 * v10;
    f50 = f18 * f48 + f20 * f50;
    v14 = f48 * 1.5 - f50 * 0.5;
    f58 = f20 * f58 + f18 * AbsValue(v8);
    f60 = f18 * f58 + f20 * f60;
    v18 = f58 * 1.5 - f60 * 0.5;
    f68 = f20 * f68 + f18 * v18;
    f70 = f18 * f68 + f20 * f70;
    v1C = f68 * 1.5 - f70 * 0.5;
    f78 = f20 * f78 + f18 * v1C;
    f80 = f18 * f78 + f20 * f80;
    v20 = f78 * 1.5 - f80 * 0.5;
    IF (f88 >= f90) AND (f8 <> f10) THEN f0 = 1.0;
    IF (f88 = f90) AND (f0 = 0.0) THEN f90 = 0.0;
END;
IF (f88 < f90) AND (v20 > 0_0000000001) THEN BEGIN
    v4 = (v14 / v20{WARNING:Possible division by zero} + 1.0) * 50.0;
    IF v4 > 100.0 THEN v4 = 100.0;
    IF v4 < 0.0 THEN v4 = 0.0;
END
ELSE v4 = 50.0;
rsx = v4;

Plot1(rsx,"rsx");

Plot2(70,"level1");
Plot3(30,"level2");
Plot4(50,"level3");

 

On 7/13/2014 at 10:22 AM, derek2209 said:

Hi,

 

I have attached an Image of the Turbo_JRSX

I hope this will help

 

Best regards,

Derek

 

150029d1404068860t

 

On 7/13/2014 at 10:22 AM, derek2209 said:

Hi,

 

I have attached an Image of the Turbo_JRSX

I hope this will help

 

Best regards,

Derek

 

150029d1404068860t

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Topics

  • Posts

    • #forex #forexnews #Brexit #GBPUSD is trading at 1.2867, having breached key support on Tuesday, courtesy of Brexit delay. The pound fell below the 50-hour moving average, confirming a bearish reversal on short duration charts. The key MA had consistently reversed pullbacks throughout the rally from 1.22 to 1.30 and may work as stiff resistance henceforth.  The GBP was offered as #PrimeMinister #Johnson's #BrexitBill won parliamentary support, but the government’s timetable of just 3 days debate on the bill was rejected.  With the parliamentary defeat, the probability of Britain leaving the European Union (#EU) before the Oct. 31 deadline has dropped sharply.  Further, a source in Prime Minister Boris Johnson’s office said on Tuesday that a new election would be the only way to move on from Britain’s Brexit crisis if the European Union agrees to a delay until January.  On a daily chart, the uptrend in GBP/USD appears to have stalled. Signs of indecision loom as a #Bearish Harami candlestick pattern risks paving the way for a reversal. Prices are eyeing near-term support which is a range between 1.2773 and 1.2798. A close under this barrier could open the door to testing former highs from September. Otherwise, clearing resistance at 1.3001 prolongs the uptrend. Expectation for GBP to “retest the 1.3010/15 level” was incorrect as GBP rose briefly to 1.3000 before plummeting to 1.2862 during NY hours. Upward pressure has dissipated and the short-term risk is for a deeper pullback. That said, any weakness is viewed as a lower trading range of 1.2810/1.2920 and a sustained decline below 1.2810 appears unlikely for now. Next 1-3 weeks:  #GBP tried to break clearly above 1.3000 for the second straight day yesterday (22 Oct) but slumped after touching 1.3000. For now, there is no change to our view from Monday (21 Oct, spot at 1.2880) wherein “GBP has to ‘punch’ above 1.3000 and register a NY closing above this level in order to indicate that the current rally has enough ‘ammunitions’ to extend to 1.3050, possibly as high as 1.3150”. While there is no change to our view, severely overbought conditions suggest GBP could ill afford to dither below 1.3000 or the risk of a short-term top would increase rapidly. From here, unless GBP cracks and stays above 1.3000 within these 1 to 2 days, a break of 1.2770 (no change in ‘strong support’ level) would indicate that the positive phase that started more than a week ago (see annotations in the chart below) has run its course. Looking ahead, a breach of 1.2770 would suggest that GBP is ready to ‘take a breather’ after the steep rally over the past couple of weeks.  
    • good news indeed, recognized in latin america as well. good job
    • CWM FX was a foreign exchange trading firm located at the Heron Tower at 110 Bishopsgate, otherwise known as Salesforce Tower. Dealing at the firm was suspended in March 2015 following a police raid on the firm and 13 arrests. There have been no convictions relating to these arrests as of 15 June 2015. CEO Anthony Constantinou was convicted in 2016 of sexual assault and sentenced to serve 12 months in jail.[1] London Police later revealed that most of the company's revenue came from a £50m alleged Ponzi scheme which promised returns of 5% per month Real charmer this conman..no? Now sit back and watch how he either fx off or trys to play the victim. Adults don't need moderators.
    • I know a parrott that has a higher IQ than you.
    • Feel free to copy and paste every time mr constipation posts. Do not be deterred by anything he says because he's a lying conning crook who can sue me for slander anytime
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.