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.

goody01

Convert MT4 Indicator into Tradestation Eld?

Recommended Posts

Hi,

 

I found 2 interesting and promissing indicators based on MT4 and would be happy to have them available for TS.

Anyone here "billangual" able to code MT4 and Easylanguage? Have MT4 code available and can post it.

 

Many thx in advance,

 

Goody

Share this post


Link to post
Share on other sites

Here is my version. Feel free to modify.

 

1. MA_WRP indicator

 

{ Mimic VininI_BB_MA_WPR.v1.mq4 }

 

inputs: WRP_Len(55), MA_Len(3), BB_Len(89), BB_Std(1);

 

Vars: WRP(0), WRPMid(0), WRPUP(0), WRPDN(0), sDev(0);

 

{WRP = (PercentR( WRP_Len )+50 )*2 ; WRP with scale > 100}

 

WRP = PercentR( WRP_Len );

WRPMid = Average( WRP, BB_Len );

SDev = StdDev( WRP, BB_Len );

 

WRPUP = WRPMid + BB_Std*sDev;

WRPDN = WRPMid - BB_Std*sDev;

 

 

Plot1(Average(WRP, MA_Len), "%R w/BB" ) ;

Plot2(WRPMid, "WRPMid" );

Plot3(WRPUP, "WRPUP" );

Plot4(WRPDN, "WRPDN" );

MA_WRP.ELD

Ma-WRP.thumb.jpg.06658c11407d1882ef8f067540cbad30.jpg

Edited by phim9hi3n

Share this post


Link to post
Share on other sites

Hi phim9hi3n,

 

great, many thanks for your help here!

Not sure what you think about it, but it seems to give a good help about where you are in a trend and if it maybe going to change. I had 2 screens attached in my first post.

There is some info available about the TDI on the Web to dig in a bit deeper, compassfx.com seems to be a good start.

 

So thx again and good luck,

 

Goody:)

Share this post


Link to post
Share on other sites
Hi,

 

I found 2 interesting and promissing indicators based on MT4 and would be happy to have them available for TS.

Anyone here "billangual" able to code MT4 and Easylanguage? Have MT4 code available and can post it.

 

Many thx in advance,

 

Goody

 

I found also interesting indicator and I think it will be useful for others traders . I will apreciate if somebody helps me "trunslate" this code into Easylanguage TS. Thanks in advance,

Alex.

CycleIdentifier.mq4

Share this post


Link to post
Share on other sites

I just want add picture of this indicator with parameters:

PriceActionFilter=1;

Length=3;

MajorCycleStrength=4;

UseCycleFilter=false;

UseFilterSMAorRSI=1;

FilterStrengthSMA=12;

FilterStrengthRSI=21;

It seems to be similar to Kelly indicator.

Thanks.

Alex.

indicator_cycleidentifier.gif.ccfc309a983de1ca0175455d1e98dfd6.gif

Share this post


Link to post
Share on other sites
:) Yes, I found some info about TDI which is helped me in writing the code.

 

2. TDI w VolBand indicator.

 

Enjoy and lucky on trading.

 

Great job on converting the TDI to tradestation!

 

Here's my contribution, the attached Wilders Smooth is the same as the "Price Channel" the orignal poster shows in the screenshot, and as the Synergy method on MT4. Plot Wilder's twice, 1 with Price = high, 1 with Price = low. Length is 5.

WILDERS SMOOTH MA.ELD

synergy.thumb.jpg.d5c75bc5f3316a081236a8faca29cc8b.jpg

Edited by jeffx
attach schreenshot

Share this post


Link to post
Share on other sites

any1 could help me to convert this please :)

 

its only my simple indicator to plot local time on chart

 

extern int corner=0;

extern int X=0;

extern int Y=0;

extern int Font_Size=10;

extern color Font_Color=Red;

//+------------------------------------------------------------------+

//| Custom indicator initialization function |

//+------------------------------------------------------------------+

int init()

{

//---- creates and sets Object Label

if(ObjectFind("LocalTime")<0) ObjectCreate("LocalTime", OBJ_LABEL, 0, 0, 0, 0);

ObjectSet("LocalTime", OBJPROP_CORNER, corner);

ObjectSet("LocalTime", OBJPROP_XDISTANCE, X+10);

ObjectSet("LocalTime", OBJPROP_YDISTANCE, Y+Font_Size);

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator deinitialization function |

//+------------------------------------------------------------------+

int deinit()

{

//---- deletes Object Label

if(ObjectFind("LocalTime")>-1) ObjectDelete("LocalTime");

//----

return(0);

}

//+------------------------------------------------------------------+

//| Custom indicator iteration function |

//+------------------------------------------------------------------+

int start()

{

//---- set and reset Object Label text to show current local time

ObjectSetText("LocalTime", TimeToStr(TimeLocal(),TIME_SECONDS), Font_Size, "Arial", Font_Color);

//----

return(0);

}

//+------------------------------------------------------------------+

Edited by furtrader

Share this post


Link to post
Share on other sites

//+----------------------------------------------- ---------------------------------------+
/ / | Hodrick - Prescott Filter.mq5 |
/ / | Copyright 2010 gpwr |
/ / | vlad1004@yahoo.com |
//+----------------------------------------------- ---------------------------------------+
# property copyright "gpwr"
# property version "1.00"
# property description "Hodrick - Prescott Filter"
# property indicator_chart_window
# property indicator_buffers 1
# property indicator_plots 1
# property indicator_label1 "filter"
# property indicator_type1 DRAW_LINE
# property indicator_color1 Red
# property indicator_style1 STYLE_SOLID
# property indicator_width1 1

//===================================== INPUTS ========== =================================
input int Per = 50; / / HP filter period
input int N = 500 / / # of prices to smooth

/ / Global variables
int PrevBars;
double Lambda;

/ / Indicator buffers
double hpf [];

/ / Custom indicator initialization function -------------------------------------------- - +
void OnInit ()
{
/ / Initialize global variables
  PrevBars = Bars (_Symbol, _Period) -1;
  Lambda = 0.0625/MathPow (MathSin (M_PI / Per), 4);

/ / Map indicator buffers
  ArraySetAsSeries (hpf, true);
  SetIndexBuffer (0 hpf, INDICATOR_DATA);
  IndicatorSetInteger (INDICATOR_DIGITS, _Digits);
  IndicatorSetString (INDICATOR_SHORTNAME "HPF ("+ string (Per )+")");
}

//====================================== MAIN ========= ===================================
int OnCalculate (const int bars,
               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 [])
{
/ / Check for insufficient data and new bar
  if (bars <N)
  {
     Print ( "Error : not enough bars in history!");
     return (0);
  }
  if (PrevBars == bars) return (bars);
  PrevBars = bars;

/ / Initialize indicator buffer to EMPTY_VALUE
  ArrayInitialize (hpf, EMPTY_VALUE);

/ / Reverse indexing direction for Open
  ArraySetAsSeries (Open, true);

/ / Main cycle ---------------------------------------------- -----------------------------+
  for (int i = 0; i <N; i + +) hpf [i] = Open [i];
  HPF (N, Lambda, hpf);
  return (bars);
}
//==================================== FUNCTIONS =========== ==============================
/ / Hodrick - Prescott Filter -------------------------------------------- -------------------+
void HPF (int n, double lambda, double & x [])
{
  double a [], b [], c [], h1, h2, h3, h4, h5, hh1, hh2, hh3, hh5, hb, hc, z;
  ArrayResize (a, n);
  ArrayResize (b, n);
  ArrayResize (c, n);

  a [0] = 1.0 + lambda;
  b [0] =- 2.0 * lambda;
  c [0] = lambda;
  for (int i = 1; i <n - 2; i + +)
  {
     a [i] = 6.0 * lambda +1.0;
     b [i] =- 4.0 * lambda;
     c [i] = lambda;
  }
  a [1] = 5.0 * lambda +1;
  a [n - 1] = 1.0 + lambda;
  a [n - 2] = 5.0 * lambda +1.0;
  b [n - 2] =- 2.0 * lambda;
  b [n - 1] = 0.0;
  c [n - 2] = 0.0;
  c [n - 1] = 0.0;

  / / Forward
  for (int i = 0; i <n; i + +)
  {
     z = a [i] - h4 * h1 - hh5 * hh2;
     hb = b [i];
     hh1 = h1;
     h1 = (hb - h4 * h2) / z;
     b [i] = h1;
     hc = c [i];
     hh2 = h2;
     h2 = hc / z;
     c [i] = h2;
     a [i] = (x [i] - hh3 * hh5 - h3 * h4) / z;
     hh3 = h3;
     h3 = a [i];
     h4 = hb - h5 * hh1;
     hh5 = h5;
     h5 = hc;
  }

  / / Backward 
  h2 = 0;
  h1 = a [n - 1];
  x [n - 1] = h1;
  for (int i = n - 2; i> = 0; i -)
  {
     x [i] = a [i] - b [i] * h1 - c [i] * h2;
     h2 = h1;
     h1 = x [i];
  }
}

 

It's Hodrick-Prescott Filter coded in MT4. it's widely used in econometrics or bussiness forecasting. hope someone convert it to Tradestation.

i've tried by myself but i've stucked in the Forward iteration part. he used one variable named x in the forward interation and it's third parameter of the function itself. but i don't know how to handle it on Tradestation.

Edited by r4bb1t

Share this post


Link to post
Share on other sites
...

It's Hodrick-Prescott Filter coded in MT4. it's widely used in econometrics or bussiness forecasting. hope someone convert it to Tradestation.

i've tried by myself but i've stucked in the Forward iteration part. he used one variable named x in the forward interation and it's third parameter of the function itself. but i don't know how to handle it on Tradestation.

 

if you have tried, but are unwilling to share your "efforts",

what chances are someone would like to collaborate in this ?

Share this post


Link to post
Share on other sites
any1 could help me to convert this please :)

 

its only my simple indicator to plot local time on chart

 

Here is code that puts the clock on the chart. See the ELD file. I got it from the TradeStation, EasyLanguage Forum:

 

eKam Clock and Timer

 

Here is some really simple code that I create:

 

Once
Begin
Value1=Text_new(D,T,H,numtostr(T,2));
End;

Text_SetString(Value1, NumToStr(T,2));
Text_SetLocation(Value1, D, T, getappinfo(aihighestDispValue));

20100526131127BarCountdownTimer.ELD

Share this post


Link to post
Share on other sites
Here is code that puts the clock on the chart. See the ELD file. I got it from the TradeStation, EasyLanguage Forum:

 

eKam Clock and Timer

 

Here is some really simple code that I create:

 

Once
Begin
Value1=Text_new(D,T,H,numtostr(T,2));
End;

Text_SetString(Value1, NumToStr(T,2));
Text_SetLocation(Value1, D, T, getappinfo(aihighestDispValue));

 

 

this code only gives you the ending time of the bar.

 

you should use currenttime:

 

Text_SetString(Value1, NumToStr(CURRENTTIME,0));

 

 

MultiCharts user can use CURRENTTIME_s, which gives the seconds portion of the time.

 

 

ps. there is a function/keyword to format the time into hh:mm:ss

Share this post


Link to post
Share on other sites
this code only gives you the ending time of the bar.

 

you should use currenttime:

 

Text_SetString(Value1, NumToStr(CURRENTTIME,0));

 

 

MultiCharts user can use CURRENTTIME_s, which gives the seconds portion of the time.

 

 

ps. there is a function/keyword to format the time into hh:mm:ss

 

Okay. Thanks. I learned something new. See, it's worth sharing code even if it's not perfect. ;)

Share this post


Link to post
Share on other sites
if you have tried, but are unwilling to share your "efforts",

what chances are someone would like to collaborate in this ?

 

i understand what you meant and i'd like to share anything i have. but i really have nothing.

i meant was i just tried to write some pseudo code to know if it's possible by myself.

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

    • 📁 Population in 2100, as projected by UN Population Division.   🇮🇳 India: 1,533 million 🇨🇳 China: 771 million 🇳🇬 Nigeria: 546 million 🇵🇰 Pakistan: 487 million 🇨🇩 Congo: 431 million 🇺🇸 US: 394 million 🇪🇹 Ethiopia: 323 million 🇮🇩 Indonesia: 297 million 🇹🇿 Tanzania: 244 million 🇪🇬 Egypt: 205 million 🇧🇷 Brazil: 185 million 🇵🇭 Philippines: 180 million 🇧🇩 Bangladesh: 177 million 🇳🇪 Niger: 166 million 🇸🇩 Sudan: 142 million 🇦🇴 Angola: 133 million 🇺🇬 Uganda: 132 million 🇲🇽 Mexico: 116 million 🇰🇪 Kenya: 113 million 🇷🇺 Russia: 112 million 🇮🇶 Iraq: 111 million 🇦🇫 Afghanistan: 110 million   @FinancialWorldUpdates Profits from free accurate cryptos signals: https://www.predictmag.com/   
    • “If the West finds itself falling behind in AI, it won’t be due to a lack of technological prowess or resources. It won’t be because we weren’t smart enough or didn’t move fast enough. It will be because of something many of our Eastern counterparts don’t share with us: fear of AI.   The root of the West's fear of AI can no doubt be traced back to decades of Hollywood movies and books that have consistently depicted AI as a threat to humanity. From the iconic "Terminator" franchise to the more recent "Ex Machina," we have been conditioned to view AI as an adversary, a force that will ultimately turn against us.   In contrast, Eastern cultures have a WAY different attitude towards AI. As UN AI Advisor Neil Sahota points out, "In Eastern culture, movies, and books, they've always seen AI and robots as helpers and assistants, as a tool to be used to further the benefit of humans."   This positive outlook on AI has allowed countries like Japan, South Korea, and China to forge ahead with AI development, including in areas like healthcare, where AI is being used to improve the quality of services.   The West's fear of AI is not only shaping public opinion but also influencing policy decisions and regulatory frameworks. The European Union, for example, recently introduced AI legislation prioritizing heavy-handed protection over supporting innovation.   While such measures might be well-intentioned, they risk stifling AI development and innovation, making it harder for Western companies and researchers to compete.   Among the nations leading common-sense AI regulation, one stands out for now: Singapore.” – Chris C Profits from free accurate cryptos signals: https://www.predictmag.com/ 
    • $NFLX Netflix stock hold at 556.59 support or breakdown?  https://stockconsultant.com/?NFLX
    • $RDNT Radnet stock flat top breakout watch, https://stockconsultant.com/?RDNT
    • $GNK Genco Shipping stock narrow range breakout watch, also see $GOGL https://stockconsultant.com/?GNK
×
×
  • Create New...

Important Information

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