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.

darthtrader3.0beta

ChartControl and ChartHelper

Recommended Posts

This thread will be an attempt to provide/pull the documentation for these important classes out of intellisense. To see the absurdity of Ninja not providing documentation for this..

First in the editor type ChartControl then a period and you should see a list of very usefull functions.

ie ChartControl.

 

Then if you take an important one and type another period after it you will get another list of cool stuff.

ChartControl.Bars[0].

 

So then if you type ChartControl.Bars[0].GetBar(Time);

you can finally see the included documentation for something that is obviously very handy:

 

int bars.GetBar(DateTime time)

-Returns the bar index for a given timestamp

 

here are the methods just for ChartControl.Bars

ChartControl.Bars[0].

BarsSinceSession

Count

CurrentBar

FirstBarOfSession

-GetBar

-GetSessionBar

-GetSessionDate

PercentComplete

Period

SessionBegin

Period

SessionBegin

SessionBreak

SessionEnd

TickCount

-ToString

TotalTicks

 

This goes the same way for chartHelper

type chartHelper. and you get a list of cool stuff.

 

chartHelper.

CalcCanvasCoordFromChartCoords

CalcChartCoordFromCanvasCoord

CalcProRataVolume

CalcTickHeight

ConvertBarIdxToX

ConvertIdxToTime

ConvertPriceToY

ConvertXtoBarIdx

ConvertXtoTime

ConvertYtoPrice

GetBarIdxFromCanvasCoord

GetCanvasCoordBarIndex

GetDebugInfo

RoundPriceToTick

SessionActive

ToString

Update

Share this post


Link to post
Share on other sites

Also a confusing thing is that in the context of ChartControl, BarIdx is the opposite of what it is for the index of something like Close[0].

While with Close[], an index of zero is the current bar..with ChartControl a BarIdx of zero is the first bar to the left on the painted chart.

 

Hopefully the end result of this thread is to figure out some functions that will make custom plotting/drawing far easier than it is currently..A great example is the GetYPos function that is from the VolumeProfile indicator.

If you add this function:

private int GetYPos(double price, Rectangle bounds, double min, double max)

{

return (int) ((bounds.Y + bounds.Height) -

((price - min) / ChartControl.MaxMinusMin(max, min)) * bounds.Height);

}

 

Then getting the Y cordinate of Close[0] is as simple as:

int ypos = GetYPos(Close[0], bounds, min, max);

Share this post


Link to post
Share on other sites

There is a good reason why what you have listed is not supported.

 

- We could change implementation

- We could remove methods/properties/classes

- Any of the above would render your custom scripts inoperable

 

I can tell you that some of the items listed above for sure will change with NT7.

Share this post


Link to post
Share on other sites

Hi NinjaTrader,

 

Some sort of 'mission statement' might be handy (I use the term pretty loosely). NT is shaping up to be a pretty nice charting package but of course it has it's limitations. If you offer ways around these limitations, it is inevitable that enterprising users will try to circumnavigate them, regardless of whether the technique they use is supported or not. Of course new, fully documented, fully supported, methods, properties and classes to achieve the things that can not currently be achieved would be welcome. Users will understand if this might require a few legacy 'unsupported' methods to be removed or changed. I am sure you are aware of the importance of maintaining backwards compatibility wherever possible however.

 

As an aside I guess 7.0 is pretty imminent might I ask are you planning (or are you currently running) a closed beta? I was a beta tester for the very first version of NT, there was only a handful of us - happy days. Do you plan to publish some information on new features soon? I am sure everyone is eager for some teasers :)

Share this post


Link to post
Share on other sites
Hi NinjaTrader,

 

Some sort of 'mission statement' might be handy

 

Blowfish, your assuming there is a clear map to this software...What is good about Ninja is clearly the "good" aspects of being fooled by randomness.

I would have done hundreds of hours of grunt work for free for this company in order to learn plotting in C# and in turn help out other current and potential customers. Yet some idiot comes in an toes the company line because "I insulted their support".

I suspect there is one genius programmer and a bunch of other "NinjaTrader_Automaton"s at this place. Its just such a mixture of pure genius and total stupidity that its just hard to get your head around.

I guess these guys forget there are other C# based trading solutions....its just really hard for me after this to see why I would waste my time with this solution instead of openquant or the "other" NT.

cough cough, NT 7 BETA has been delayed until q2 per their own forum...

Edited by darthtrader3.0beta

Share this post


Link to post
Share on other sites
There is a good reason why what you have listed is not supported.

 

- We could change implementation

- We could remove methods/properties/classes

- Any of the above would render your custom scripts inoperable

 

I can tell you that some of the items listed above for sure will change with NT7.

 

Unfortunately this is not supported right now

Share this post


Link to post
Share on other sites

As an aside I guess 7.0 is pretty imminent might I ask are you planning (or are you currently running) a closed beta? I was a beta tester for the very first version of NT, there was only a handful of us - happy days. Do you plan to publish some information on new features soon? I am sure everyone is eager for some teasers :)

 

We will have a public beta version available and at that time, we will release more information.

Share this post


Link to post
Share on other sites
We will have a public beta version available and at that time, we will release more information.

 

Thanks for your reply as it is a major release do you plan a closed beta or are you going from internal test straight to the public beta? That was what I was angling at :) Just curious.

Share this post


Link to post
Share on other sites
Thanks for your reply as it is a major release do you plan a closed beta or are you going from internal test straight to the public beta? That was what I was angling at :) Just curious.

 

Not sure yet, it depends how are internal testing pans out.

Share this post


Link to post
Share on other sites

Oh well... wish I had known about some limitations (windows not restoring on WinXP, turtle speed to backfill data, etc) before buying my lifetime license...

 

Right now I see it as a long term investment, hopefully not GM...

Share this post


Link to post
Share on other sites

Well I do want to apologize for what I wrote yesterday. I was going to post some functions I had wrote for chartcontrol yesterday then the ninja guys post pissed me off to no end.

I do understand the business model constraints with trading software...

Once you get past the mean, your customer base is just looking to proxy "rolling their own" through your software. Thats always going to lead to conflict.

Beggars and can't be choosers when it comes to this area.

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.