C7 BOT

DESCRIPTION
Uses advanced channel detection capabilities to determine the probability and extent of the breakout and will adapt to it. This bot operates on only stop order entries, is not a scalper, delays won't matter at all and slippage and spread difference won't kill you. Can use strategically trailed stop-losses as many successful traders. Message me for the newest settings bendx77@gmail.com and or check the comments area of the market for newest docs. Check 'C7 Bots' signal for real live results.

This is a breakout bot and the simplest way to describe this bots function is first it detects a horizontal channel then it places stop order(s) when price moves away from the channel wall deep in to the channel. It is recommended to run this bot on many pairs and timeframes like the 'C7 Bots' signal. Most settings are actually in ATR instead of pips. This allows us to create blanket optimizing strategies as well as adjusts automatically to current market conditions. Money management is simple. Either specify a percent of equity or just specify lot size. This bot generally produces results that also work well in forward tests, especially if all the MT5 version optimization features are being taken advantage of. Read on for more info.

ABOUT
I originally designed this bot to run on my own personal account but when I saw how easy and safe it was to sell bots on the market, I decided to give it a try and sell my bots here.

MT4/MT5
The MT4 bot was designed for production. MT4 itself is more friendly to multi orders on single symbols therefore I use this version to produce the signal and have 11 different TF/Symbol combos at the time of writing this although I intend to add more. The MT5 version can also be used for production but can not currently handle multiple instances for a single symbol. 

MT5 version was designed for optimizing. MT5 itself is a lot more powerful for optimizing and C7 bot truly unleashes more than enough of this power. The new PUREDD mode optimizes toward smoother equity curves with its introduction of an algorithm which utilizes a 'trades since last peak' stat as well as DD and profit. We can also specify a minimum profit factor and minimum trades which, if not met, will penalize the frame to a degree set by the user. Contains also a separate mechanism to slowly increase lot size over time in order to "trick" the optimizer in to preferring later(more recent) performance over earlier performance. MT5 version also contains a visual optimizing module so you can see the optimization and equity curves as they are produced. The MT4 version can be used for optimizations but lacks many of the features in the MT5 version for optimizing. 

If you want to do your own optimization, MT5 version is recommended to do the optimizations, even if you will be running MT4 for production. MT5 is available for free and you can use a free demo server for the data. Much effort has been put in to testing to make sure the MT4 version and MT5 version act the same. You must remember that settings can only be copied/entered in manually from/to MT4/MT5 versions as .set files are not currently interchangeable between MT4 and MT5 and actually don't even load all the drop down settings properly sometimes to/from tester/chart.  (The settings ARE compatible of course but the .set files won't load properly if you try and load a .set file from another version of MT.)

SETTINGS
d99="[GBPUSD][5]Default-Settings-Optimized-02/25/2014/V1.6...Please check signal 'C7 Bots' for real results on live account. Please message me for the newest settings. bendx77@gmail.com. Please check the comments area for settings and docs.";
//Description-->This is just any string that contains the symbol name and timeframe in minutes square bracketed. The bot will not run if the TF and symbol are not place in this string. This is a safety mechanism requested by my users to make sure you don't run the wrong settings on the wrong chart/TF.
d0="***********OPTIMIZABLES";//***********OPTIMIZABLES-->Remark
d0a="***Definition of New Wall";//***Definition of New Wall-->Remark
SWINGPOINTONLY = false;--> If true, will not draw channel walls unless the swing-point criteria are met. This is just for testing.
MINSWINGSPACE  = 25;-->Minimum bars between swing-points for touch defined walls
MAXSWINGSPACE=500;-->Maximum bars between swing-points for touch defined walls
MINSWINGS=2;-->Minimum touch points for touch defined walls [2-4]
ALLOWANCE=1;-->Tolerance of touch-point accuracy expressed in ATR
SWINGTYPE=none;-->Swing type. Experimental testing only. Use normal or none for production.
sd0b="***Definition of Channel";//***Definition of Channel-->Remark
MAXCHANNELWIDTH=17.5;-->Maximum width of channel expressed in ATR
CHANNEL_LENGTH =450;-->Length of Channel in bars
CHANNEL_CORE=7.0;-->Core of the channel in ATR. Price must reach core for an order to be placed.
NOCHANNELBARS=260;-->Timer in bars for how long the condition of "No Channel" is tolerated before orders are deleted.
d0c="***SLTP and Order Criteria";//**SLTP and Order Criteria-->Remark
STOP_LOSS=3;-->Stop Loss in ATR
TAKE_PROFIT=9;-->Target in ATR
TRAILING_STOP=0.5;-->Trailing stop in ATR
STEP=0.025;-->Step in ATR
CUSHION=-0.1;-->Distance from channel wall for orders to be placed in ATR. Can be negative.
SAR=true;-->Stop and reverse mode. If false will simply exit an open position if the opposite wall is hit. If true will enter the new position AND exit the current position.
d0d="***Big Round Numbers";//**Big Round Numbers-->Remark
BRNSTOP=true;-->If true will use the BRN stop mode. this works in conjunction with Trail Stop. Will keep stop behind a BRN for protection.
BRN=.005;-->The actual BRN level
BRNSTOPLOSS=0.6;-->The distance behind the BRN the stop will be placed when trailed. expressed in ATR.
d1="**************RISK & ORDER INFO";//**************RISK & ORDER INFO-->Remark
SLIPPAGE=2;-->Allowed slippage for orders
LOT=3;-->Lot size either in percent or lots.
LOT_TYPE=percent;-->Lot size type. can be percent or standard.
MAGIC_NUMBER=8677;-->Magic number to identify which orders it controls. Should be unique to other instances on the same symbol.
d2="**************TESTER INPUTS";//**************TESTER INPUTS (must not be 0)-->Remark
TesterMinTrades=100;-->Minimum trades. Frames that do not meet this requirement will be penalized to the PENexp exponent.          
TesterSharpWeight=5;-->Weight of SR  in custom score.        
TesterDDRatioWeight=5;-->Weight of DD in custom score.        
TesterPFWeight=25;-->Weight of profit factor in custom score.             
TesterProfitweight=1;-->Weight of profit in custom score.         
ScoreMultiplier=10;-->To adjust score whe its too big or too small to read.        
PUREDD=true;-->If true uses an alternate mechanism for custom score involving draw-down, amount of trades between peaks, profit factor, amount of trades and profit. If true only MINPF, TesterTrades, PENexp and TesterLotinc will be used.
TesterLotInc=0.005;-->Slowly increases lotsize over time so the optimizer prefers later performance over earlier performance.
MINPF=1.33;-->Minimum Profit Factor. If not met the frame will be penalized to the exponent of PENexp. 
PENexp=5;-->Will penalize depending on how far from the requirement the frame is. The higher this number the steeper the penalty curve.
