[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Multiple Contracts



PureBytes Links

Trading Reference Links

<x-html><HTML>
During the holidays I began working on an idea I would like to share with
the list in hopes that it may lead to some discussion of the subject and
perhaps be of benefit to all. Since I am not totally unselfish, I also
would like some input to improve my EL code and perhaps my ideas as well.

<P>After reading the article about "Z-Score" in the last issue of TASC
I decided to try increasing or decreasing the number of contracts traded
in one of my systems. Rather than simply increase and thereby increase
drawdown, I decided to change the quantities according to the preceding
sequence (or lack of sequence) of losing or winning trades. This may be
old hat to many of the pros out there but I have not tried this till now.
What follows is a function based on the ideas. The results have looked
very good to me. My main point of interest has been to increase profit
without increasing drawdown proportionately and also to improve the profit
factor. Obviously different systems react differently to the use of multiple
contracts and I have found very different settings to work best on two
different systems. The settings can be set with the account size in mind
as well. I hope all the really competent EL programmers won't laugh too
hard at my amateur coding and instead give some suggestions and ideas for
improvement. Well, here it is:
<BR>--------------------------------------------------------------------------------------------------------------------------------------------

<P>{Function Name= NumContracts}

<P>Input:LStrt(NumericSimple),SStrt(NumericSimple),ContrLim(NumericSimple),LNumC(NumericSimple);
<BR>Input:LNumC1(NumericSimple),LNumC2(NumericSimple),SNumC(NumericSimple),SNumC1(NumericSimple);
<BR>Input:MultiCon(NumericSimple),CntrLim2(NumericSimple);
<BR>Var:PosCtr(0),PosCtr1(0),NmC(0),PosCtr2(0);
<BR>Var:C1(0),C2(0),C3(0),C4(0),C5(0),MC(False),NPosCtr1(0),NPosCtr2(0),WinCnt(0),LoseCnt(0),WinTotal(0),LoseTotal(0);
<BR>Var:NWT(0),NLT(0),WinGrps(0),LoseGrps(0),WGA(0),LGA(0),C1a(0),C2a(0),C0(0),C4a(0),C5a(0);

<P>&nbsp;&nbsp; IF MultiCon=2 then MC=True else MC=False; <FONT SIZE=-1>{*for
one contract only set MultiCon to 1 (or anything except 2), for Multiple
then set to 2 *}</FONT>
<BR>&nbsp;&nbsp; NWT=NumWinTrades;NLT=NumLosTrades;&nbsp;&nbsp; <FONT SIZE=-1>{***I
assigned these values to variables just to make the typing faster***}</FONT>

<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT SIZE=-1>{****PosCtr1 counts winning trades, PosCtr2 counts losing
trades****************}</FONT>
<BR>&nbsp;&nbsp; IF NWT>NWT[1] then begin
<BR>&nbsp;&nbsp; PosCtr1=PosCtr1+1;
<BR>&nbsp;&nbsp; End else begin IF NLT>NLT[1] then begin
<BR>&nbsp;&nbsp; PosCtr1=0;C1a=0;C2a=0;End;End;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT SIZE=-1>{***C1a,C2a,C4a,C5a, are used below***}</FONT>
<BR>&nbsp;&nbsp; IF NLT>NLT[1] then begin
<BR>&nbsp;&nbsp; PosCtr2=PosCtr2+1;End else begin if NWT>NWT[1] then begin
<BR>&nbsp;&nbsp; PosCtr2=0;C4a=0;C5a=0;End;End;

<P>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<FONT SIZE=-1>{***********The following establishes the number of contracts
to trade depending on consec. wins*********}</FONT>
<BR><FONT SIZE=-1>{***The contracts increase by 1+LnumC1 as long as the
trades are winners and the number of winners is not higher than "ContrLim".
After the number of winning trades exceeds "ContrLim" then the number of
contracts is reduced by 1 after each winning trade. If any value reaches
zero the the number of contracts to trade =1. If there were 8 consecutive
winning trades the number of contracts could look like this- 1,2,3,4,5,4,3,2
or also 1,2,3,4,5,6,7,8 or even 1,3,5,7,9,11,13,15. It all depends on the
settings you choose***}</FONT>

<P>&nbsp;&nbsp; IF (PosCtr1&lt;LStrt and PosCtr1>0) then C0=LNumC else
C0=0;
<BR>&nbsp;&nbsp; IF&nbsp; (PosCtr1>=LStrt and PosCtr1&lt;=ContrLim) then
begin
<BR>&nbsp;&nbsp; C1=((PosCtr1)+LNumC1);C1a=C1;End Else begin C1=0;End;
<BR>&nbsp;&nbsp; IF PosCtr1>ContrLim and NWT>NWT[1] then C2a=C2a+1;
<BR>&nbsp;&nbsp; IF C2a>0 and (C1a-C2a)>0 then C2=(C1a-C2a) else IF C2a=0
then C2=0 else C2=1;

<P>&nbsp;&nbsp;&nbsp;<FONT SIZE=-1>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
{The following establishes the number of contracts to trade depending on
consec. losses*********}</FONT>
<BR><FONT SIZE=-1>&nbsp;&nbsp;&nbsp;&nbsp; {*** This code is practically
the same as the code above but is used for consecutive losing trades*****}</FONT>
<BR>&nbsp;&nbsp; IF (PosCtr2&lt;SStrt and PosCtr2>0) then C3=SNumC else
C3=0;
<BR>&nbsp;&nbsp; IF (PosCtr2>=SStrt and PosCtr2&lt;=CntrLim2) then begin
<BR>&nbsp;&nbsp; C4=((PosCtr2-1)+SNumC1);C4a=C4;End else begin C4=0;End;
<BR>&nbsp;&nbsp; IF posCtr2>CntrLim2 and NLT>NLT[1] then C5a=C5a+1;
<BR>&nbsp;&nbsp; IF C5a>0 and (C4a-C5a)>0 then C5=(C4a-C5a) else If C5a=0
then C5=0 else C5=1;
<BR>&nbsp;&nbsp; IF MaxList(C0,C1,C2,C3,C4,C5)>0 and MC then NmC =MaxList(C0,C1,C2,C3,C4,C5)
else Nmc=1;
<BR>&nbsp;&nbsp; NumContracts=Nmc;

<P>------------------------------------------------------------------------------------------------------------------------------------------

<P>I'm certain there are many better ways to write this code and probably
as many ways to vary the number of contracts traded as there are traders.
This is just the result of a few hours work and hopefully can be improved
upon tremendously.

<P>Regards, Randall</HTML>
</x-html>From ???@??? Sun Dec 28 13:40:00 1997
Received: from smtp2.nwnexus.com (smtp2.nwnexus.com [198.137.231.18])
	by mail1.halcyon.com (8.8.7/8.8.7) with ESMTP id NAA12772
	for <neal@xxxxxxxxxxxxxxxx>; Sun, 28 Dec 1997 13:35:58 -0800 (PST)
Received: from mx2.eskimo.com (mx2.eskimo.com [204.122.16.49])
	by smtp2.nwnexus.com (8.8.7/8.8.7) with ESMTP id NAA09499
	for <neal@xxxxxxxxxxx>; Sun, 28 Dec 1997 13:35:53 -0800
Received: (from smartlst@xxxxxxxxx)
	by mx2.eskimo.com (8.8.8/8.8.8) id NAA00370;
	Sun, 28 Dec 1997 13:35:53 -0800 (PST)
Resent-Date: Sun, 28 Dec 1997 13:35:53 -0800 (PST)
From: FrankKaeb <FrankKaeb@xxxxxxx>
Message-ID: <a664e4d3.34a6c540@xxxxxxx>
Date: Sun, 28 Dec 1997 16:31:28 EST
To: omega-list@xxxxxxxxxx
Subject: Tom DeMark
Content-type: text/plain; charset=US-ASCII
Content-transfer-encoding: 7bit
Organization: AOL (http://www.aol.com)
X-Mailer: Inet_Mail_Out (IMOv11)
Resent-Message-ID: <"4Ok-B2.0.d5.tOifq"@mx2>
Resent-From: omega-list@xxxxxxxxxx
X-Mailing-List: <omega-list@xxxxxxxxxx> archive/latest/12586
X-Loop: omega-list@xxxxxxxxxx
Precedence: list
Resent-Sender: omega-list-request@xxxxxxxxxx
Status:  O

What are some of the opinions of experienced members of this board about Tom
DeMark and his books/indicators?  Has anyone used these and made money?
What did you like/not like about his material?

Thanks