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

    • $CSCO Cisco Systems stock, nice top of range breakout, from Stocks to Watch at https://stockconsultant.com/?CSCOSEPN Septerna stock watch for a bottom breakout, good upside price gap
    • $CSCO Cisco Systems stock, nice top of range breakout, from Stocks to Watch at https://stockconsultant.com/?CSCOSEPN Septerna stock watch for a bottom breakout, good upside price gap
    • MNST Monster Beverage stock, top of range breakout above 60.45, from Stocks to Watch at https://stockconsultant.com/?MNST
    • ...hallucinates.... Student: “What if we gave the monkey LSD?” Guru: “The monkey already did LSD”
    • Question: To those that had/have cancer, what were the signs that made you think “something is not right here” to make you go see a doctor? Answer: So, 5/25/2018, I woke up, got ready for work, and as I walked to my car, I started gagging. Like something was stuck in my throat and I needed to clear it. And then it went away.   But 10 minutes after that, I was T-boned at 40mph on the driver side door. But what made me see a doctor was while my muscles felt better and bruises were going away, the gagging still continued, I started having fevers, my neck felt swollen, I was having such a hard time breathing, and I'd have random sharp pains in my chest, but not from where the seat belt saved me.   2 weeks after the accident, I finally see an urgent care doctor, who looks me over, tells me I'm fine, but luckily requests a neck X-ray. And I ask for a chest X-ray, which he rolls his eyes but let me have (most of my pain was in the neck, so I understand).   The very next day, he calls and says “So, that chest X-ray shows there's a 4 inch mass on your heart and lungs, and your lungs have been filling up with fluid, as well as in your pericardial (heart) wall. We need you to come in tomorrow.”   Turns out the big mass, due to the accident, caused my heart and lungs to tear and fill with fluid, the swollen neck and gagging was caused by 2 metastasized tumors, and the fevers and weight loss were symptoms. Stage 4b Hodgkin's Lymphoma.   But thankfully, we went very aggressive with chemo (and had a lot of bad side effects that don't normally happen to patients), and now I'm about 16 months cancer-free. Yay lucky X-rays! Rachel Jurina, Quora Source: https://www.quora.com/To-those-that-had-have-cancer-what-were-the-signs-that-made-you-think-something-is-not-right-here-to-make-you-go-see-a-doctor   Profits from free accurate cryptos signals: https://www.predictmag.com/  
×
×
  • Create New...

Important Information

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