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

    • NFLX Netflix stock, watch for a top of range breakout at https://stockconsultant.com/?NFLX
    • SMCI Super Micro Computer stock watch, attempting to move higher off the 34.06 support area at https://stockconsultant.com/?SMCI        
    • UPST Upstart stock watch, pull back to 68.15 gap support area at https://stockconsultant.com/?UPST  
    • Why not to simply connect you account to myfxbook which will collect all this data automatically for you? The process you described looks tedious and a bit obsolete but may work for you though.
    • The big breakthrough with AI right now is “natural language computing.”   Meaning, you can speak in natural language to a computer and it can go through huge data sets, make sense out of them, and speak back to you in natural language.   That alone is a huge breakthrough.   The next leg? AI agents. Where they don’t just speak back to you.   They take action. Here’s the definition I like best: an AI agent is an autonomous system that uses tools, memory, and context to accomplish goals that require multiple steps.   Everything from simple tasks (analyzing web traffic) to more complex goals (building executive briefings or optimizing websites).   They can:   > Reason across multiple steps.   >Use tools like a real assistant (Excel spreadsheets, budgeting apps, search engines, etc.)   > Remember things.   And AI agents are not islands. They talk to other agents.   They can collaborate. Specialized agents that excel at narrow tasks can communicate and amplify one another’s strengths—whether it’s reasoning, data processing, or real-time monitoring.   What it Looks Like You wake up one morning, drink your coffee, and tell your AI agent, “I need to save $500 a month.”   It gets to work.   First, it finds all your recurring subscriptions. Turns out you’re paying $8.99 for a streaming service you forgot you had.   It cancels it. Then it calls your internet provider, negotiates a lower bill, and saves you another $40. Finally, it finds you car insurance that’s $200 cheaper per year.   What used to take you hours—digging through statements, talking to customer service reps on hold for an hour, comparing plans—is done while you’re scrolling Twitter.   Another example: one agent tracks your home maintenance needs and gets information from a local weather-monitoring agent. Result: "Rain forecast next week - should we schedule gutter cleaning now?"   Another: an AI agent will plan your vacations (“Book me a week in Italy for under $2,000”), find the cheapest flights, and sort out hotels with a view.   It’ll remind you to pay bills, schedule doctor’s appointments, and track expenses so you’re not wondering where your paycheck went every month.   The old world gave you tools—Excel spreadsheets, search engines, budgeting apps. The new world gives you agents who do the work for you.   Don’t Get Too Scared (or Excited) Yet William Gibson famously said: "The future is already here – it's just not evenly distributed."   AI agents will distribute it. For decades, the tools that billionaires and corporations used to get ahead—personal assistants, financial advisors, lawyers—were out of reach for regular people.   AI agents could change that.   BUT, remember…   We’re in inning one.   AI agents have a ways to go.   They’re imperfect. They mess up. They need more defenses to get ready for prime time.   To be sure, AI is powerful, but it’s not a miracle worker. It’s great at helping humans solve problems, but it’s not going to replace all jobs overnight.   Instead of fearing AI, think of it as a tool to A.] save you time on boring stuff and B.] amplify what you’re already good at. Right now is the BEST time to start experimenting. It’s also the best time to find investments that will “make AI work for you”. Author: Chris Campbell (AltucherConfidential)   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.