Hi-

I asked Marcin a question related to this earlier, but given the considerable 
interest in the past on this board regarding managing multiple systems, I'd 
thought put some further thoughts here.  My understanding of the conclusion 
reached during the last round of discussions was that each individual should 
use low-level CBT to accomplish their multiple systems management goals.  So 
I've done that, but in the end its of no practical use because of the 
incredible number of static arrays that were required to do it - it 'works' on 
small samples/tests but the memory demands are too great for things that I'd 
actually use it for.  As my objectives were rather simple, I imagine that 
others are still wrestling with similar issues.  

As an example, part of my plan was to limit the % of equity that was employed 
by any one system at a given time.  Therefore, while in the backtester I needed 
to know which system or systems generated the signal.  So I started by creating 
a static array that i could later access in the CBT which contained flags 
(1,2,4,etc.) indicating which system or systems it came from.  However, because 
of the memory issues, I decided to stuff these flags into the positionsize 
property and just determine the actual size later while looping through CBT.  
That allowed me to determine which systems signals were coming from, and then 
choose which model to allocate the trade to (in the event of multiple 
simultaneous signals), but I still needed to get the correct entry price.  
There could be as many entry prices as I have systems, and since I don't know 
which I'll be using until I get to the backtester, I needed to store all of 
them  - another static
 array.  This process continued like this and then it occurred to me that just 
about all of these issues would go away if I could just attach the information 
I needed to the entry signal object.  So for example, the user could set 
PositionSize1, PositionSize2, PositionScore1, PositionScore2, BuyPrice1, 
BuyPrice2, and so on...or perhaps just dummy variables...Dummy1, Dummy2, etc..  
 I'm sure there's a memory cost to doing this, but it can't be anything like 
storing all these static arrays (is this correct? i really have no idea what 
i'm talking about).  Also, I'm sure just making these additional property slots 
available will come at some performance cost, but perhaps adding them could be 
an option in settings.  

For all I know, editing the number of properties that can be stored in a signal 
object is already possible - is it?  If not, do others think this would be 
useful?  Is there a better way of achieving the types of things that I'm trying 
to do?  

Appreciate any dialogue whatsoever on this - have spent an embarassing amount 
of time on it without much to show for it. 



      

Reply via email to