Gamestudio Links
Zorro Links
Newest Posts
Data from CSV not parsed correctly
by EternallyCurious. 04/25/24 10:20
Trading Journey
by howardR. 04/24/24 20:04
M1 Oversampling
by Petra. 04/24/24 10:34
Zorro FIX plugin - Experimental
by flink. 04/21/24 07:12
Scripts not found
by juergen_wue. 04/20/24 18:51
zorro 64bit command line support
by 7th_zorro. 04/20/24 10:06
StartWeek not working as it should
by jcl. 04/20/24 08:38
folder management functions
by VoroneTZ. 04/17/24 06:52
AUM Magazine
Latest Screens
The Bible Game
A psychological thriller game
SHADOW (2014)
DEAD TASTE
Who's Online Now
5 registered members (TipmyPip, AndrewAMD, VoroneTZ, Quad, 1 invisible), 691 guests, and 11 spiders.
Key: Admin, Global Mod, Mod
Newest Members
Mega_Rod, EternallyCurious, howardR, 11honza11, ccorrea
19048 Registered Users
Previous Thread
Next Thread
Print Thread
Rate Thread
Using price series without actually using series #484151
09/16/21 19:22
09/16/21 19:22
Joined: Dec 2014
Posts: 206
Germany
Smon Offline OP
Member
Smon  Offline OP
Member

Joined: Dec 2014
Posts: 206
Germany
I often ran into problems with wrong series usage. I'm working on a script, which needs an indicator which is calculated from a price series only when a trade is entered. This gave me the idea, to just completely skip any series usage. The solution I came up with is this:

Code
var* NoSeries(int period, int mode, ...)
{
	int i;
	var* Series = zalloc(period*sizeof(var));
	for(i=0; i<period; i++)
	{
		if(mode == 0) Series[i] = price(i);
		if(mode == 1) Series[i] = priceOpen(i);
		if(mode == 2) Series[i] = priceHigh(i);
		if(mode == 3) Series[i] = priceLow(i);
		if(mode == 4) Series[i] = priceClose(i);
	}
	return Series;
}


function run() 
{
	LookBack = 100;
	BarPeriod = 60;
	asset("EUR/USD");
	
	
	//if(Init) mySeries = zalloc(100*sizeof(var));
	var ZorroEMA = EMA(series(price()), 30);
	

	var* test = NoSeries(70);
	
	
	var myEMA = EMA(test, 30);
	printf("\n%.5f, Zorro:%.5f", myEMA, ZorroEMA);
	
}


Notice that I implemented an option to chose between different price options.

Re: Using price series without actually using series [Re: Smon] #484153
09/16/21 22:10
09/16/21 22:10
Joined: Feb 2017
Posts: 1,725
Chicago
AndrewAMD Online
Serious User
AndrewAMD  Online
Serious User

Joined: Feb 2017
Posts: 1,725
Chicago
zalloc returns a temporary pointer. It expires if you call zalloc enough times. You don’t have this problem with series().

Re: Using price series without actually using series [Re: AndrewAMD] #484212
09/21/21 19:18
09/21/21 19:18
Joined: Dec 2014
Posts: 206
Germany
Smon Offline OP
Member
Smon  Offline OP
Member

Joined: Dec 2014
Posts: 206
Germany
Oh yes, thank you! I think this should be fine with malloc(), right?

Re: Using price series without actually using series [Re: Smon] #484213
09/21/21 19:25
09/21/21 19:25
Joined: Feb 2017
Posts: 1,725
Chicago
AndrewAMD Online
Serious User
AndrewAMD  Online
Serious User

Joined: Feb 2017
Posts: 1,725
Chicago
Yes. As always, don’t forget to free().


Moderated by  Petra 

Gamestudio download | chip programmers | Zorro platform | shop | Data Protection Policy

oP group Germany GmbH | Birkenstr. 25-27 | 63549 Ronneburg / Germany | info (at) opgroup.de

Powered by UBB.threads™ PHP Forum Software 7.7.1