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

 

  Quote

{ 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.ELDFetching info...

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
  goody01 said:
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.mq4Fetching info...

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
  phim9hi3n said:
:) 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.ELDFetching info...

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

 

  Quote
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
  r4bb1t said:
...

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
  furtrader said:
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.ELDFetching info...

Share this post


Link to post
Share on other sites
  Tradewinds said:
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
  Tams said:
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
  Tams said:
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

    • AMZN Amazon stock, nice buying at the 187.26 triple+ support area at https://stockconsultant.com/?AMZN
    • DELL Dell Technologies stock, good day moving higher off the 90.99 double support area, from Stocks to Watch at https://stockconsultant.com/?DELL
    • MCK Mckesson stock, nice trend and continuation breakout at https://stockconsultant.com/?MCK
    • lmfx just officially launched their own LMGX token, Im planning to grab a couple of hundred and maybe have the option to stake them. 
    • Date: 2nd April 2025.   Market on Edge: Tariff Announcement and Volatility Ahead!   The US economic and employment data continues to deteriorate with the job vacancies figures dropping to a 5-month low. In addition to this, the IMS Manufacturing PMI also fell below expectations. However, both the US Dollar and Gold declined simultaneously following the release of the two figures, an uncommon occurrence in the market. Traders expect a key factor to be today’s ‘liberation day’ where the US will impose tariffs on imports. USDJPY - Traders Await Tariff Confirmation! Traders looking to determine how the USDJPY will look today will find it difficult to determine until the US confirms its tariff plan. Today is the day when Trump previously stated he would finalize and announce his tariff plan. The administration has not yet released the policy, but investors expect it to be the most expansionary in a century. President Trump is due to speak at 20:00 GMT. On HFM's Calendar the speech is stated as "US Liberation Day Tariff Announcement". Currently, analysts are expecting Trump’s Tariff Plan to impose tariffs on the EU, chips and pharmaceuticals later today as well as reciprocal tariffs. Economists have a good idea of how these tariffs may take effect, but reciprocal tariffs are still unspecified. In addition to this, 25% tariffs on the car industry will start tomorrow. The tariffs on the foreign cars industry are a factor which will particularly impact Japan. Although, traders should note that this is what is expected and is not yet finalised. Last week, President Trump stated that he would implement retaliatory tariffs but allow exemptions for certain US trade partners. Treasury Secretary Mr Bessent and National Economic Council Director Mr Hassett suggested that the restrictions would primarily target 15 countries responsible for the bulk of the US trade deficit. However, yesterday, Trump contradicted these statements, asserting that additional duties would be imposed on any country that has implemented similar measures against US products. The day’s volatility will depend on which route the US administration takes. The harshness of the policy will influence both the Japanese Yen as well as the US Dollar.   USDJPY 5-Minute Chart   US Economic and Employment Data The JOLT Job Vacancies figure fell below expectations and is lower than the previous month’s figure. The JOLT Job Vacancies read 7.57 million whereas the average of the past 6 months is 7.78 million. The ISM Manufacturing Index also fell below the key level of 50.00 and was 5 points lower than what analysts were expecting. The data is negative for the US Dollar, particularly as the latest release applies more pressure on the Federal Reserve to cut interest rates. However, this is unlikely to happen if the trade policy ignites higher and stickier inflation. In the Bank of Japan’s Governor's latest speech, Mr Ueda said that the tariffs are likely to trigger higher inflation. USDJPY Technical Analysis Currently, the Japanese Yen Index is the worst performing of the day while the US Dollar Index is more or less unchanged. However, this is something traders will continue to monitor as the EU session starts. In the 2-hour timeframe, the USDJPY is trading at the neutral level below the 75-bar EMA and 100-bar SMA. The RSI and MACD is also at the neutral level meaning traders should be open to price movements in either direction. On the smaller timeframes, such as the 5-minute timeframe, there is a slight bias towards a bullish outcome. However, this is only likely if the latest bearish swing does not drop below the 200-Bar SMA.     The key resistant level can be seen at 150.262 and the support level at 149.115. Breakout levels are at 149.988 and 149.674. Key Takeaway Points: Job vacancies hit a five-month low, and the ISM Manufacturing PMI missed expectations, adding pressure on the Federal Reserve regarding interest rate decisions. Traders await confirmation on Trump’s tariff policy, which is expected to impact the EU, chips, pharmaceuticals, and foreign car industries. The severity of the tariffs will influence both the JPY and the USD, with traders waiting for final policy details. The Japanese Yen Index is the worst index of the day while the US Dollar Index is unchanged. Always trade with strict risk management. Your capital is the single most important aspect of your trading business.   Please note that times displayed based on local time zone and are from time of writing this report.   Click HERE to access the full HFM Economic calendar.   Want to learn to trade and analyse the markets? Join our webinars and get analysis and trading ideas combined with better understanding of how markets work. Click HERE to register for FREE!   Click HERE to READ more Market news.   Michalis Efthymiou HFMarkets   Disclaimer: This material is provided as a general marketing communication for information purposes only and does not constitute an independent investment research. Nothing in this communication contains, or should be considered as containing, an investment advice or an investment recommendation or a solicitation for the purpose of buying or selling of any financial instrument. All information provided is gathered from reputable sources and any information containing an indication of past performance is not a guarantee or reliable indicator of future performance. Users acknowledge that any investment in Leveraged Products is characterized by a certain degree of uncertainty and that any investment of this nature involves a high level of risk for which the users are solely responsible and liable. We assume no liability for any loss arising from any investment made based on the information provided in this communication. This communication must not be reproduced or further distributed without our prior written permission.
×
×
  • Create New...

Important Information

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