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.

BlueHorseshoe

Strategies with Multiple Exits

Recommended Posts

I'm looking to combine multiple entry/exit methods, each currently programmed as individual strategies, into one strategy.

 

Each source strategy has it's own specific exits (profit targets, stop-losses).

 

How can I prevent one source strategy's exit order (eg 'setstoploss(500)' ) from exiting a position generated by an entry order to which it is not applicable? Is there an easy way to link marketposition with the specific entry order that caused it?

 

I do have a method of doing this, but once again it's a very convoluted approach and I was wondering if there is a simpler method?

 

Many thanks,

 

BlueHorseshoe

Share this post


Link to post
Share on other sites

Name the entries and reference those names when exiting. Try this on 5 minute @ES with time set to exchange time.

 

if t=900 then begin
   buy("strat1") 3 contracts next bar market;
   buy("strat2") 5 contracts next bar market;
end;

if t=1000 then sell("fe s1") next bar from entry("strat1") market;
if t=1100 then sell("fe s2") next bar from entry("strat2") market;

Share this post


Link to post
Share on other sites

You will have to write out the logic for each target and stop.

 

var: pt1(5), pt2(10), SL1(5), SL2(10), ntry(0);

if t=900 then begin
   buy("strat1") 3 contracts next bar market;
   buy("strat2") 5 contracts next bar market;
   ntry=c;    
end;

sell("sl strat1") next bar from entry("strat1") ntry-SL1 stop;
sell("sl strat2") next bar from entry("strat2") ntry-SL2 stop;
sell("pt strat1") next bar from entry("strat1") ntry+pt1 limit;
sell("pt strat2") next bar from entry("strat2") ntry+pt2 limit;

setexitonclose;

Share this post


Link to post
Share on other sites

Ultimately you need to make sure your system allows this, otherwise you get issues regards average prices.

To a large extent it is all about accounting, but you still need to use what ever system allows you to do this easier. I separate longs in one account and shorts in another to allow multiple opens sometimes.....its a pain but easier to work with rather than having systems cut and then reverse.

 

As per Onesmith, are you using Easylanguage (i think thats it?), whats the broker allow, do they allows mulitple entires and exits...or do they amalgamate.

dont you have LIFO, FIFO issues in the US (I dont know too much about these but have seen issues raised by others)

Edited by SIUYA

Share this post


Link to post
Share on other sites
Ultimately you need to make sure your system allows this, otherwise you get issues regards average prices.

To a large extent it is all about accounting, but you still need to use what ever system allows you to do this easier. I separate longs in one account and shorts in another to allow multiple opens sometimes.....its a pain but easier to work with rather than having systems cut and then reverse.

 

As per Onesmith, are you using Easylanguage (i think thats it?), whats the broker allow, do they allows mulitple entires and exits...or do they amalgamate.

dont you have LIFO, FIFO issues in the US (I dont know too much about these but have seen issues raised by others)

 

Thanks for your reply. The language is EasyLanguage and the amalgamated strategy would only need to establish new positions from flat (nor would longs and shorts be held simultaneously). The goal is to ensure that a position established under one entry condition is not then exited according to the exit condition attached to a different entry.

 

Oh and I'm not US-based - I'm in the UK, though in Rainy Snowdonia rather than Sunny London :)

 

Cheers,

 

BlueHorseshoe

Share this post


Link to post
Share on other sites
You will have to write out the logic for each target and stop.

 

var: pt1(5), pt2(10), SL1(5), SL2(10), ntry(0);

if t=900 then begin
   buy("strat1") 3 contracts next bar market;
   buy("strat2") 5 contracts next bar market;
   ntry=c;    
end;

sell("sl strat1") next bar from entry("strat1") ntry-SL1 stop;
sell("sl strat2") next bar from entry("strat2") ntry-SL2 stop;
sell("pt strat1") next bar from entry("strat1") ntry+pt1 limit;
sell("pt strat2") next bar from entry("strat2") ntry+pt2 limit;

setexitonclose;

 

Doh! - so that's why other programmers name entries . . . That should be all the info I need to make this work - thanks OneSmith.

 

BlueHorseshoe

Share this post


Link to post
Share on other sites

BlueHorseShoe ?

 

You could find the "NWT Exit Suite"

 

One of the many things it gives you is the ability to link exits with a pre-named strategy.

So when you apply the Signal, you give it a name. It will then only work with orders that match this name.

 

There are heaps of other benefits.

  • Exit orders have names that match the reason for the exit. ie TS_LX (Trailing Stop Long Exit)
  • The Exit Signal can activley display on the chart the exact style of exit that is work ie SL, BE, TS etc
  • Importing this Signal also gives you a function that allows you to easily display text from with in a signal. Even print it vertically.
  • Because each exit type ie SL, BE, BB, TS, ST etc has it's own name applied, an output summary can now be generated detailing how many occurrences of each exit.
  • Numbered exits that match the trade log.
  • Etc Etc Etc

 

Neil.

 

Below is an example chart showing a trade as it moves from a PA (Price Action StopLoss) to a NC (Naked Close Stop) to a BB (Big bar Stop) back to a NC, NC, NC and final exit. You can also see that it plots the Green triangle at exactly the stop level.

At the top, the Entry Signal also writes "Session1 Start" vertically. To do this is just a single function call. Print_Text. Print_Text can also display all kinds of graphic characters.

 

attachment.php?attachmentid=29066&stc=1&d=1337686231

 

 

 

Here shows the usual Multicharts trade log but you can see that each of the exits has a proper name assigned so that stats can be collected on the number of times the exit was used. Ie how many BE (Break Even) exits were there ???

 

attachment.php?attachmentid=29068&stc=1&d=1337686231

 

 

 

 

Here is a summary report that combines all of the relevant (IMHO) information for a system.

Note that stats in the middle that count the various exits and qty of hits on each.

 

 

attachment.php?attachmentid=29067&stc=1&d=1337686231

 

 

 

Neil.

local_resize.thumb.jpg.f2af4583002e75b73aab60f1932b5f8e.jpg

5aa710fde7c9a_SystemPerforrmanceSummary.thumb.jpg.ae2cbfa0ef35b727a2bbd25f7bf8e04c.jpg

Trade_Log.thumb.jpg.00626eced08cb65e9e92ea0b9de9f9e7.jpg

Share this post


Link to post
Share on other sites

Is the reason you didn't post the code for this because I have to pay to see it? Or did you inadvertently not post it?

 

BlueHorseShoe ?

 

You could find the "NWT Exit Suite"

 

One of the many things it gives you is the ability to link exits with a pre-named strategy.

So when you apply the Signal, you give it a name. It will then only work with orders that match this name.

 

There are heaps of other benefits.

  • Exit orders have names that match the reason for the exit. ie TS_LX (Trailing Stop Long Exit)
  • The Exit Signal can activley display on the chart the exact style of exit that is work ie SL, BE, TS etc
  • Importing this Signal also gives you a function that allows you to easily display text from with in a signal. Even print it vertically.
  • Because each exit type ie SL, BE, BB, TS, ST etc has it's own name applied, an output summary can now be generated detailing how many occurrences of each exit.
  • Numbered exits that match the trade log.
  • Etc Etc Etc

 

Neil.

 

Below is an example chart showing a trade as it moves from a PA (Price Action StopLoss) to a NC (Naked Close Stop) to a BB (Big bar Stop) back to a NC, NC, NC and final exit. You can also see that it plots the Green triangle at exactly the stop level.

At the top, the Entry Signal also writes "Session1 Start" vertically. To do this is just a single function call. Print_Text. Print_Text can also display all kinds of graphic characters.

 

attachment.php?attachmentid=29066&stc=1&d=1337686231

 

 

 

Here shows the usual Multicharts trade log but you can see that each of the exits has a proper name assigned so that stats can be collected on the number of times the exit was used. Ie how many BE (Break Even) exits were there ???

 

attachment.php?attachmentid=29068&stc=1&d=1337686231

 

 

 

 

Here is a summary report that combines all of the relevant (IMHO) information for a system.

Note that stats in the middle that count the various exits and qty of hits on each.

 

 

attachment.php?attachmentid=29067&stc=1&d=1337686231

 

 

 

Neil.

Share this post


Link to post
Share on other sites
Is the reason you didn't post the code for this because I have to pay to see it? Or did you inadvertently not post it?

 

Well that's a nice hello.

 

In the first paragraph I wrote, I posted a link to another forum where it could be download.

This enables me to only have one site where I can share my updates.

The moderator of this forum edited my post and removed this area of it.

That's why the first line reads a bit funny. "You could find the "NWT Exit Suite". It was a paragraph a few lines in length.

 

Neil.

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.