Forex



Go Back   Forex Trading > Trading systems > Phoenix
Forex Forum Register More recent Blogs Calendar Advertising Others Help






Register
Welcome to Forex-TSD!, one of the largest Forex forums worldwide, where you will be able to find the most complete and reliable Forex information imaginable.

From the list below, select the forum that you want to visit and register to post, as many times you want. It’s absolutely free. Click here for registering on Forex-TSD.

Exclusive Forum
The Exclusive Forum is the only paid section. Once you subscribe, you will get free access to real cutting-edge Trading Systems (automated and not), Indicators, Signals, Articles, etc., that will help and guide you, in ways that you could only imagine, with your Forex trading.
  • Elite Section
    Get access to private discussions, specialized support, indicators and trading systems reported every week.
  • Advanced Elite Section
    For professional traders, trading system developers and any other member who may need to use and/or convert, the most cutting-edge exclusive indicators and trading systems for MT4 and MT5.
See more

Reply
 
Thread Tools Display Modes
  #21 (permalink)  
Old 11-19-2006, 02:23 AM
daraknor's Avatar
Senior Member
 
Join Date: Oct 2006
Location: Portland, OR USA
Posts: 996
daraknor is on a distinguished road
Quote:
Originally Posted by pip'er
Hi Trader83, I am also testing and I like your idea - I was thinking along those lines myself. So is this what you mean more or less?

Price usually goes against initial trade by 20-30pips so why not take advantage of it by setting a buy/sell limit at the same time the buy or sell signal is generated. you could set the TP to the open price say 15-30 pips or let it ride along with the first TP of 42 pips(or whatever). If it isn't hit then have phoenix close it when 1st TP is hit.
Reading this when I'm awake helps a lot. That does make sense but knowing what "usually" is would be important. Maybe set a SL=breakeven once you hit 5 pip profit too. Adding trades like this sounds like a fun thing to do for Phoenix 6 candidates, trying out new code.

Right now my main interest is simply making Phoenix more reliable and robust. I will put this on my list of things to write. If someone else wants to write it in the meantime, sounds great. Having a few experiments sitting around would be entertaining to programmers I think.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #22 (permalink)  
Old 11-19-2006, 05:03 AM
daraknor's Avatar
Senior Member
 
Join Date: Oct 2006
Location: Portland, OR USA
Posts: 996
daraknor is on a distinguished road
The irregularity in trading with the same broker, same data, same settings, same timeframe, same ... everything is my main concern. Sometimes 2 installations stay in sync, sometimes they trade with opposite signals. (Billworld2 live testing, trading results in old thread, my results I need to post) I am hoping that the consecutive trade filter will help filter reverse results.

Since the indicators are based on the differences between values (moving average, etc), a small difference would yield a trade. The size of the values aren't checked, just their relative value. If the values aren't very strong one way or another, they may bounce back and forth quickly. A filter has been added in the 5.6.4 (you need to modify settings to activate it) to not trade on changing signals.

Code:
   if(CloseBar1 > HighEnvelope1) {SellSignal1 = true;} 
   if(CloseBar1 < LowEnvelope1)  {BuySignal1  = true;}
   if(SMA2-SMA1>0) {BuySignal2  = true;}
   if(SMA2-SMA1<0) {SellSignal2 = true;}
   if(OsMABar2 > OsMABar1)  {SellSignal3 = true;}
   if(OsMABar2 < OsMABar1)  {BuySignal3  = true;}
   if(diverge >= DVBuySell && diverge <= DVStayOut)
       {BuySignal4 = true;}
   if(diverge <= (DVBuySell*(-1)) && diverge >= (DVStayOut*(-1))) 
       {SellSignal4 = true;}
(Signal 4 is custom)

There are three additional consequences I forsee with the filters. 1) trades will be slightly delayed, which will have a the configured number of ticks delay before a trade is entered. This ultimately means less drawdown but too large of a value may miss a trade. 2) No wavering between values where the indicators don't offer strong conclusions. 3) The signal threshold also acts as a time filter. The current version is tick based (which I like) and a fix was submitted to make it time based (which may not respond to high volatility in time to trade). Adding time filters also enables us to add multiple simultaneous trades.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #23 (permalink)  
Old 11-19-2006, 10:58 AM
Senior Member
 
Join Date: Jun 2006
Posts: 278
giapel is on a distinguished road
insert funtiocn

hi daraknor,
in post #2, you display function "void CheckForClose() ".
This function must be introduced to phoenix 5_06_04 to decrease drawdown !

i 've downloaded the last version in post#1, but it is not.

giapel
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #24 (permalink)  
Old 11-19-2006, 01:30 PM
Denkhaus's Avatar
Junior Member
 
Join Date: Oct 2005
Posts: 6
Denkhaus is on a distinguished road
API-Call checking

hi daraknor,

thank you and the others for your work. I've tested Phoenix_5_6_04 with
MIG - Trading Metatrader and most of the time i get OrderModify Errors 130.

The Errors occur in Mode3_MoveSL_Trade_3() function. I think the reason is that
SL is greater OrderOpenPrice() in a Long order and vicaversa in a Short order.


It seems that the EA code is not fully checked if API Errors happen.
I think we should introduce API call checking for each API call and evaluate
GetLastError() if possible. This would make Phoenix more reliable.

regards

Last edited by Denkhaus; 11-19-2006 at 02:32 PM.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #25 (permalink)  
Old 11-19-2006, 04:15 PM
Denkhaus's Avatar
Junior Member
 
Join Date: Oct 2005
Posts: 6
Denkhaus is on a distinguished road
TrailingStopChecking

another bugy code seems to be:


PHP Code:
 if(PhoenixMode==1)//Phoenix Classic
      
{
      
CheckOpenTrade();     
      if(
CloseAfterHours != 0)  CheckCloseAfterHours();
      if(!
StopLoss==0)              CheckTrailingStop();
      if(
BreakEvenAfterPips != 0)        CheckBreakEven();
      } 
so even if TrailingStop is 0 CheckTrailingStop() will be executed
and if(OrderType() == OP_SELL) the Order can be modified without serious reason because (Point * TrailingStop) == 0.

maybe its better to change to:

PHP Code:
 if(PhoenixMode==1)//Phoenix Classic
      
{
      
CheckOpenTrade();     
      if(
CloseAfterHours != 0)  CheckCloseAfterHours();
      if(
TrailingStop !=0)              CheckTrailingStop();
      if(
BreakEvenAfterPips != 0)        CheckBreakEven();
      } 

regards
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #26 (permalink)  
Old 11-19-2006, 04:33 PM
Senior Member
 
Join Date: Oct 2006
Posts: 183
Trader83 is on a distinguished road
To pip'er

To pip'er
Yes, that is the idea. The point is that there are two outcomes after Phoenix has opened position - SL or TP. Sometimes, TP is reached in 2 hours after opening position. Sometimes position is held for 3 days, while price fluctuates around brakeven point (entry point). So we just get additional profit. The closer to SL of the first position we enter, the better is gain\loss ratio. I'm going to becktest this idea manually.
Concerning counting signals before entering position, I believe it does not improve Phoenix performance, and my backtests prove that. I guess that Phoenix is specially programmed to ''swallow'' or ignore other signals after entering position, like opening in other direction. Once position is opened there are two outcomes, and we should just wait. However, most positions made by Phoenix are correct, and before hitting TP, price fluctuates, that we can use. Simply just entering when we have -50 pips on first position, there is high probsbility, that the price will AT LEAST AGAIN reach entering point or breakeven point. So we enter with stoploss 30 pips ( Stoploss point of the first position) and takeprofit +50pips (entry point). So gain\loss ratio is much better than with initial TP 42pips and SL 84 pips.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #27 (permalink)  
Old 11-19-2006, 06:35 PM
daraknor's Avatar
Senior Member
 
Join Date: Oct 2006
Location: Portland, OR USA
Posts: 996
daraknor is on a distinguished road
Quote:
Originally Posted by giapel
hi daraknor,
in post #2, you display function "void CheckForClose() ".
This function must be introduced to phoenix 5_06_04 to decrease drawdown !

i 've downloaded the last version in post#1, but it is not.

giapel
The only change to the default behavior in 5.6.04 was a Hendrick approved fix for mode 3 written by HerbertH that he promised us. The code in Post #2 are varied submissions written on the old forum thread, collected by several people, and sent as an attachment to my email address. I posted them here so we can all look at them easily, and I can collect valuable feedback like your comments here

I will try to include it in the next experimental build (and I plan on at least 1 release per week). I consider this change to be "altering the logic of Phoenix" and not a pure "bug fix". Does this make sense?

My main "development goal" for releases is to come up with a "Stable" version of Phoenix even though it might not be as profitable as an "Experimental" build. Some people will probably run experimental builds on real data. I supported a company at a datacenter who had 20 machines with custom kernels running the 2.3.30-50 builds of the linux kernel. He wanted the features, he ran experimental code.

5.6.4 is intended to be a "stable" candidate. I will release experimental nightly builds while we work on a stable build - so both types of users will have the kind of code they want to run.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #28 (permalink)  
Old 11-19-2006, 06:42 PM
daraknor's Avatar
Senior Member
 
Join Date: Oct 2006
Location: Portland, OR USA
Posts: 996
daraknor is on a distinguished road
Quote:
Originally Posted by Trader83
To pip'er
Yes, that is the idea. The point is that there are two outcomes after Phoenix has opened position - SL or TP. Sometimes, TP is reached in 2 hours after opening position. Sometimes position is held for 3 days, while price fluctuates around brakeven point (entry point). So we just get additional profit. The closer to SL of the first position we enter, the better is gain\loss ratio. I'm going to becktest this idea manually.
Short Version: Try MaxTrades=3 signal_count = 10 and variations of similar settings.
Long Version: I'm glad people are very interested in this. To perform a very similar test you can also set MaxTrades = 2 or more. That way if you are in a buy trade and you get a sell signal, you enter the second position. It is highly recommended to have signal_count set to ?? value so you don't enter the same signal each tick up to the maximum value. (see "Weekly build notes" in this thread) It may be better to use "confirming signals per bar" instead of "confirming signals per tick" when combined with MaxTrades. Please see the links in this thread, the code change to do this is moving one line of code 4 or 5 lines higher.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #29 (permalink)  
Old 11-19-2006, 06:46 PM
daraknor's Avatar
Senior Member
 
Join Date: Oct 2006
Location: Portland, OR USA
Posts: 996
daraknor is on a distinguished road
Denkhaus: Thank you very much for reviewing the Trailing Stop code. I submitted it as it was sent to me. I will review this entire code block possibly do something different. I made a thread just about Trailing Stop strategies, and I currently have 10 different strategies that can be done with them. I will probably incorporate some of my other code into Phoenix to make TrailingStop and breakeven code work as closely as I can get it to "intended" but "bugfree".
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
  #30 (permalink)  
Old 11-19-2006, 07:08 PM
Member
 
Join Date: Aug 2006
Posts: 52
aghenry1 is on a distinguished road
Request

Would be to difficult to ask that each code post be identified beginning line number so that those who wish to learn the process can see the code in its context and cut down on search time (12 pages printed) since you may not know exactly where to look as a learner. No need to respond just a request if you think of it.

Greg
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!StumbleUpon this Post!Reddit this Post!Facebook this Post!BlinkList this Post!Google Bookmarks this Post!Yahoo! My Web this Post!
Reply With Quote
Reply

Bookmarks

Tags
mq4 profitable tested, phoenix, phoenix ea, phoenix mq4, Phoenix_5_6_03.mq4, phoenix_ea_v5_6_03.mq4, Price Action Channel mq4


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
"Phoenix - FAQ, Stable, User support -Read Post #1" depictureboy Phoenix 189 04-11-2009 05:23 PM
Phoenix 6 - Development, Download, Bugs - See Post#1 daraknor Phoenix 88 12-20-2008 12:50 AM
Suggestions for a 4 hr. Trading System? marcf Suggestions for Trading Systems 2 05-23-2007 08:20 PM


All times are GMT. The time now is 10:19 PM.



Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.