Need TA Lib Help

Created at 19 Jun 2018, 00:56
How’s your experience with the cTrader Platform?
Your feedback is crucial to cTrader's development. Please take a few seconds to share your opinion and help us improve your trading experience. Thanks!
Mikro's avatar

Mikro

Joined 20.06.2015

Need TA Lib Help
19 Jun 2018, 00:56


Hi all,

I am just trying to take a look into TA Library www.ta-lib.org, which seems to feature lots of Chart Formation Signals.

Unfortunately I am stuck using the Interface.

I extracted TA Lib in my /Sources/ Folder set up the Reference and in Visual Studio the Library now is available.

But I can't figure out which Argument to pass it to make it work!

For example the Context Help for Core.SMA says

Core.SMA(int startIdx, int endIdx,double[] inReal, int optInTimePeriod, out int outBegIdx, out int outNBElement, double[] outReal):RetCode

I figure startIdx as Index should be the cAlgos Calculates 'Index' Argument - Period

endIdx ist just 'Index'

inReal could be marketseries.Close

optInTimePeriod should be the SMA Period

but no Idea what the rest could be...

 

Any Ideas or perhaps a Link to a Tutorial?

 

Cheers

Mikro


@Mikro
Replies

Mikro
26 Jun 2018, 20:35

Seems no one, tried to get TALib running so far... 8[


@Mikro

PanagiotisCharalampous
27 Jun 2018, 09:39

Hi Mikro,

Did you try to contact the developers directly?

Best Regards,

Panagiotis


@PanagiotisCharalampous

Mikro
01 Jul 2018, 17:28

Hi Panagiotis,

according to the hoomepage Ta-Lib ist Open Source and links a Community Forum for help.

http://tadoc.org/forum/

This seems to be down, at least I wasn't able to open the Site.

 

But taking a closer look at several google Hits the issue seems to be that I have to transform the Price Arrays from double[] to float[] since TA-Lib seems to need this format.

Is there a smoother way the transform double[] to float[] than iterating through all members in a

for i to double[].count

loop?

Cheers

Mikro


@Mikro

Waxy
02 Jul 2018, 07:46

	double[] d = new double[] {1,2,3,4,5};
	float[] f = d.Select(x => (float)x).ToArray();

 


@Waxy

solark
03 Jul 2018, 23:21

iirc you're gonna pass in an array the same size as `inReal` into `outReal`. outBegIdx will be the first index in which `outReal` is valid. For example an SMA of period 30 will have a outBegIdx of 29 (first index where the SMA can be calculated). `outNBElement`  will be the number of valid entrieds from outBegIdx on. All three can be uninitialized, they're just outputs.


@solark