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.

nuno-online

ADE and Intrabarpersist Question?

Recommended Posts

Hi,

I am using ADE to transfer an indicator information from a daily chart to an intraday chart. That's ok for this

 

In my 5min Chart, i have the information (the value of my indicator) for the last daily bar closed.

Is it possible to have the information for this last bar even if the bar isn't closed?

 

for exemple, today (01 Oct 2012) i have the daily indicator value for the last bar closed (28 Setp 2012)

I would like to have the daily indicator value for the last bar even if this bar isn't closed (01 Oct 2012)

 

is it possible?

Do i have tu use IntrabarPersist? ... How ?

here is the indicator

 

// NR_ADE_Sender indicator

Vars:              
Class("DailyAvg") , AvgMap(MapSN.New), MA(0);

// CACULATE MOVING AVERAGE
MA = AverageFc(c,50);

//Store the data we are interested in into AvgMap
Value1 = MapSN.Put(AvgMap,"DailyAvg", MA);

//Use ADE to store for current  symbol and bar interval
Value1 = ADE.PutBarinfo(class, GetsymbolName, ADE.Barinterval, ADE.BarID, AvgMap);

//Plot daily average on daily chart
Plot1(MA, "Av",  DarkBlue);

 

// NR_ADE_Reciver indicator

Vars: 
  Interval(0), Class("DailyAvg"), AvgMap(Mapsn.new),
  value1(0), value2(0);

value1 = Ade.GetBarInfo(Class, GetSymbolName, Interval, Ade.BarID, AvgMap);
value2 = MapSN.Get(AvgMap, "DailyAvg");

Plot1(value2, "DailyAvg", Darkblue);

 

Thank you for your help

Nuno

ade_test.pla

MultiCharts1.thumb.png.542a9be94376ce615c04f78e33ae2a8e.png

Share this post


Link to post
Share on other sites
Hi,

I am using ADE to transfer an indicator information from a daily chart to an intraday chart. That's ok for this

 

In my 5min Chart, i have the information (the value of my indicator) for the last daily bar closed.

Is it possible to have the information for this last bar even if the bar isn't closed?

 

for exemple, today (01 Oct 2012) i have the daily indicator value for the last bar closed (28 Setp 2012)

I would like to have the daily indicator value for the last bar even if this bar isn't closed (01 Oct 2012)

 

is it possible?

Do i have tu use IntrabarPersist? ... How ?

here is the indicator

 

...

 

Thank you for your help

Nuno

 

Haven't seen you in a long time... thanks for popping by.

Share this post


Link to post
Share on other sites

nuno-online

 

As you currently have it set up, you can read today’s current DailyAvg from Sender in your Reciever. Just format it to "Update value intrabar" (tick by tick)

Best practices: insert code in Sender to only save / ‘send’ DailyAvg when it changes by a certain user defined tolerance or something. That way it’s not updating AvgMap on every tick on the daily chart….

 

…and, as designed, intrabarpersist is not at issue

see

https://community.tradestation.com/wiki/display/EasyLanguage/IntrabarPersist

 

hth

Edited by zdo

Share this post


Link to post
Share on other sites

Hi Zdo

 

thank you for your help

 

what do you mean about "Update value intrabar" (tick by tick)?

In screenshots as you can see the 2 indicators are "update on every tick

 

Have you an example about best practices: i just want to update (at every tick )DailyAvg on my 5 min chart.

 

"Best practices: insert code in Sender to only save / ‘send’ DailyAvg when it changes by a certain user defined tolerance or something. That way it’s not updating AvgMap on every tick on the daily chart…."

 

Nuno

5aa7114e328ad_FormatStudyNR_ADE_Reciver.thumb.jpg.26e24e963a1035b614cb42cfec4afe45.jpg

Share this post


Link to post
Share on other sites
Is there another solution to save the results of the current bar until it is complete ?

apparently, it's impossible with ADE

 

Nuno

 

re: "another solution"

... If the MA from daily is all you need, you could use GlobalVariable

... or make the daily Data2

... it's too many bars to tranlate the 50 day MA to the 5 min. chart. but some tf's are amenable to such machinations.

 

For a possible ADE solution, have you tried using a 1440 minute chart instead of the daily?

(or minutes = session length for your instrument(s) instead of 1440)

( btw, you would have to calc new proper length of your MA to match 50 period on daily chart)

 

hth

Share this post


Link to post
Share on other sites

Hi Nuno

 

ADE doesn't send information tick by tick but "bar by bar"

I'm not sure at 100%

Can someone confirm ?

 

******************************

 

AmiBroker can do that very easily

 

TimeFrameSet( );

TimeFrameRestore();

TimeFrameExpand( );

 

**************************

 

A TS smart solution here

 

JAM Higher Timeframe Pack

 

attachment.php?attachmentid=31846&stc=1&d=1349513945

 

 

The JAM HT Avg Simple indicator works for tick, minute, daily, weekly, monthly and yearly chart intervals.

It can display a minute based moving average on a tick chart, a daily moving average on a minute chart, and weekly, monthly or yearly moving averages on a daily chart. No slow and complicated DLLs . No multi-timeframe charts to mess up your chart format .

 

http://www.jamstrategytrading.com/HTPack.htm

 

aaa

 

PS Je trade aussi le FCE ;=)

 

.....

JAM.jpg.7a97981a0968642328d4fe624a38ce0a.jpg

Edited by aaa

Share this post


Link to post
Share on other sites

hi aaa

 

JAM Higher Timeframe Pack see to be a good solution

I understand that ADE doesn't send information tick by tick but "bar by bar"

 

Thank you very much

 

Nuno

 

ps: je ne savais pas que tu parles français ; merci pour ton aide!

Share this post


Link to post
Share on other sites
Hi,

I am using ADE to transfer an indicator information from a daily chart to an intraday chart. That's ok for this

 

In my 5min Chart, i have the information (the value of my indicator) for the last daily bar closed.

Is it possible to have the information for this last bar even if the bar isn't closed?

 

for exemple, today (01 Oct 2012) i have the daily indicator value for the last bar closed (28 Setp 2012)

I would like to have the daily indicator value for the last bar even if this bar isn't closed (01 Oct 2012)

 

is it possible?

yes

Do i have tu use IntrabarPersist? ... How ?

no

here is the indicator

 

// NR_ADE_Sender indicator

Vars:              
Class("DailyAvg") , AvgMap(MapSN.New), MA(0);

// CACULATE MOVING AVERAGE
MA = AverageFc(c,50);

//Store the data we are interested in into AvgMap
Value1 = MapSN.Put(AvgMap,"DailyAvg", MA);

//Use ADE to store for current  symbol and bar interval
Value1 = ADE.PutBarinfo(class, GetsymbolName, ADE.Barinterval, ADE.BarID, AvgMap);

//Plot daily average on daily chart
Plot1(MA, "Av",  DarkBlue);

 

// NR_ADE_Reciver indicator

Vars: 
  Interval(0), Class("DailyAvg"), AvgMap(Mapsn.new),
  value1(0), value2(0);

value1 = Ade.GetBarInfo(Class, GetSymbolName, Interval, Ade.BarID, AvgMap);
value2 = MapSN.Get(AvgMap, "DailyAvg");

Plot1(value2, "DailyAvg", Darkblue);

 

Thank you for your help

Nuno

 

To make this easier to debug, remove the comment (in the sender) that says "calculate moving average". If you have something difficult you feel needs a comment then put the comment after it, on the same line as it refers to so it only takes up one line. Repeat this process of reducing the complexity until there's a minimum number of lines of code you don't understand. Then study those things. I assure you this process will enable you to debug anything. And indeed it's necessary to achieve this proficiency because for instance in this case you think you're looking for a specific solution but you're going to want to solve other things after you have your that solution. If you just want the solution to what you've asked then ....you can access the most recent daily avg on a 5 minute intraday chart by replacing ADE.BarID (only in the receiver) with ADE.BarID+1;

 

As you begin to understand the nuances and their implications you will want something that also works on historical bars so it can be backtested. Change the reference to ADE.BarID back to how it was. Then in the sender, define mySum=summation(c,49); Add a logic gate (in the receiver) branching to separate formulas for avg depending on whether time corresponds to last 5 minute bar of the day. ADE.BarID is equal to d+t/10000. Only the last 5m bar of the session (at end of day) corresponds to the same ADE.BarID as the *daily* charts ADE.BarID.

 

//sender

var: mySum(0);

mySum=summation(c,49);

 

// receiver

var: eod(1515);

if t=eod then avg=MA else avg=(mySum+c)/50;

plot1(avg,"avg"); // not MA

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.


×
×
  • Create New...

Important Information

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