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.
Different brokers do things different ways. I'd like Phoenix 6 to support multiple brokers by release, but most of the issues I'm assuming we'll run into this point will be logical and environmental, not semantical. (e.g. The way I wrote the code sucks or the broker is weird but trades actually seem to work.)
I'll stick in another 1-3 indicators tonight for different trend analysis. I'm thinking Jurik's trend code and standard OSMA for trend detection/avoidance. I will dip into my puddle of indicators if I have time tonight. In terms of a framework, Phoenix Expert will allow Indicator1 AND Indicator2 OR Indicator3. It is capable of logical OR, AND, XOR, NOT as well as weighted signals (allowing for hybrid strategies in a single EA).
I read the code start to finish twice before releasing the Alpha. I rewrote some sections, checked the system with backtesting, fiddled with some signal optimization, etc. The majority of the work ahead is simply knocking off pieces of the TODO list, and then culling code for Phoenix Simple. Adding indicators is easy, especially without a true/false matrix written in code.
Hi,Daraknor!Should I both test Phoenix6 ALPHA.mq4 (in the post #2) and Phoenix6 alpha easy.mq4 (in the post #13) or choose one?
EASY was a modification I made adding another indicator because Autumnleaves was asking about adding indicators. A friend asked me where the problem in code was, I made some quick modifications and then shared them. Phoenix EASY is just a side project, and not really Phoenix.
autumnleaves, I didn't see any flaw in the code, but I don't know what settings you would use with the indicator are. The issue I saw with the settings I tried was that one of the values was always 0 and you needed a positive value less than 0 to start a trade. I would focus debugging on the actual settings, and try to get both values to positive numbers greater than zero. The easiest way to do this is to make it the only active signal in Phoenix 6 EASY, set the number of signals required to 1, and then look at the logs for results. They will be stored in MT4\tester\files\
It's not the holy grail, but I'm tired and this is about what I was looking for. When the moving average departs from the price on the chart, you can specify the difference in pips that is allowed before trades are blocked. I also reset the signalcount for that type of trade, so it won't just wait for the first peak to trade. If desired we can do this to the other filters, making them stronger. (If the filter is broken ConsecSignals would need to start over.)
So here is the Alpha 1 release with the extra filter and the bug fixes for mini accounts and period detection spotted earlier.
I'll try to add Jurik and/or ADX indicators for trading as well. Since ADX has counter trend properties and trend strength detection, it seems like a strong candidate.
If you guys can't spot any more bugs I'll start working on beta after adding maybe one more indicator. Could someone else add the time filter indicator into EntryFilter2 please?
Thanks for the comments Daraknor. The reason that I get sells and not buys with the PAC signal is that I reverse all the Buy/Sell signals in order to convert Phoenix to a trending system.
But I need clarification regarding your conclusion. Is there a bug in this code that limits it to either long or short transactions, or did I miss something somewhere? How can the problem be corrected?
Autumnleaves,
Have you checked the updated documentation. In it I added some explanations about the signals. I was under the understanding that only signals 2 and 3 were counter trending signal. I would appreciate it if you would have a look and let me know if I need to change something.
Signal 1 - Moving Average Envelopes
Envelopes they indicate the upper and lower limits of the price range. View a picture of Envelopes.
If the price goes above the upper envelope that is a Buy Signal.
If the price goes below the lower envelope that is a Sell Signal.
Signal 2 - Moving Average Comparison 1 - Counter Trend Signal
Two moving averages are calculated using the same time period P_SMAPeriod. The first is for the present timeframe, and the second is for a point in the past, which is a certain number of bars previous.
If the older MA is greater than the present one that indicates a downtrend price trend. but Phoenix produces a Buy Signal
If the older MA is greater than the present one that indicates a downtrend price trend. but Phoenix produces a Buy Signal
Signal 3 - OSMA - Counter Trend Signal
Uses OSMA: Calculates the Moving Average of Oscillator and returns its value. Sometimes called MACD Histogram in some systems.
If the OSMA from 2 periods ago is less that the OSMA of 1 period ago this indicates a rising price trend, but Phoenix produces a Sell Signal.
If the OSMA from 2 periods ago is less that the OSMA of 1 period ago this indicates a falling price trend, but Phoenix produces a Buy Signal.
Signal 4 - Moving Average Comparisons 2
Two moving averages are calculated, using P_Fast_Period and P_Slow_Period. Phoenix uses a 15-minute timeframe. The timeframes vary from 1 hour 15 minutes to 9 hours 15 minutes in the current pref settings. It subtracts the fast moving average (which should be for the shorter timeframe) from the value of the faster timeframe.
If the faster moving average is above the slower one by at least P_DVBuySell but not by more than P_DVStayOut Buy.
If the faster moving average is below the slower one by at least P_DVBuySell but not by more than P_DVStayOut Sell.
I would like to add extra signals from EASY (see Malone EASY document) to Phoenix. When I try to add the Price Action Channel, the result is exclusively sell transactions. Can you suggest why this might be happening? See the code below.
Perhaps these signals could be included in Phoenix 6.
I couldn't compile with Currenttime I used Time[0]
I'll send you my version where I updated this. It's a lot easier for me to understand. You should make sure that I didn't reverse the buy and the sell.