cBots

Warning! Executing cBots downloaded from this section may result in loss of funds. Use them at your own risk.
Notification Publishing copyrighted material is strictly prohibited. If you believe there is copyrighted material in this section you may use the Copyright Infringement Notification form to submit a claim.
How to install
DescriptionSubmited byDateCategoryPreviewDownloadsCommentsRating
// ----------------------------------------------------------------------------------------     If you open multiple positions in a hedge strategy. This indicator show volume exposure each currency to other currency. // ----------------------------------------------------------------------------------------                                                                                                                                         
15 Dec 2014
Downloads
677
Comments
0
Rating
0
Download
//Date: 11/12/2014 //Country: Chile //Copyright: Felipe Sepulveda Maldonado //LinkedIn: https://cl.linkedin.com/in/felipesepulvedamaldonado //Facebook: https://www.facebook.com/mymagicflight1 //Whats Up: +56 9 58786321, your comments are welcome! //Donations Wallet: wallet.google.com felipe.sepulveda@gmail.com //Description: WillR% & Moving Average //Recomended Timeframe: M5 //Cheers! using System; using System.Linq; using cAlgo.API; using cAlgo.API.Indicators; using cAlgo.API.Internals; using cAlgo.Indicators; namespace cAlgo {     [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]     public class Maithai : Robot     {         #region cBot Parameters         [Parameter("cBot Label", DefaultValue = "Maithai")]         public string cBotLabel { get; set; }         [Parameter("Volume", DefaultValue = 1000, MinValue = 1000)]         public int InitialVolume { get; set; }         [Parameter("Take Profit", DefaultValue = 2, MinValue = 1, MaxValue = 100)]         public int TakeProfit { get; set; }         [Parameter("Trailing Stop", DefaultValue = 1, MinValue = 0, MaxValue = 30)]         public int TrailingStop { get; set; }         [Parameter("Stop Loss", DefaultValue = 14, MinValue = 5, MaxValue = 150)]         public int StopLoss { get; set; }         [Parameter("WilliamsR High", DefaultValue = 90, MinValue = 85, MaxValue = 95)]         public int wHigh { get; set; }         [Parameter("WilliamsR Low", DefaultValue = 15, MinValue = 5, MaxValue = 20)]         public int wLow { get; set; }         [Parameter("WilliamsR Period", DefaultValue = 100, MinValue = 50, MaxValue = 200)]         public int wrPeriod { get; set; }         [Parameter("ATR Market Volatility Min.", DefaultValue = 35, MinValue = 0, MaxValue = 110)]         public int atrMarketMin { get; set; }         [Parameter("ATR Market Volatility Max.", DefaultValue = 100, MinValue = 100)]         public int atrMarketMax { get; set; }         [Parameter("ATR Period", DefaultValue = 10, MinValue = 1, MaxValue = 100)]         public int atrPeriod { get; set; }         [Parameter("Moving Average Type", DefaultValue = MovingAverageType.Simple)]         public MovingAverageType MovingAverageType { get; set; }         [Parameter("MA Period", DefaultValue = 14, MinValue = 3, MaxValue = 100)]         public int Period { get; set; }         [Parameter("MA Source")]         public DataSeries Source { get; set; }         [Parameter("Max. Time Open (Minutes)", DefaultValue = 60, MinValue = 5, MaxValue = 360)]         public int maxTime { get; set; }         #endregion         private MovingAverage _movingAverage;         #region cBot Events         protected override void OnStart()         {             _movingAverage = Indicators.MovingAverage(Source, Period, MovingAverageType);             Timer.Start(1);         }         protected override void OnTimer()         {         }         protected override void OnTick()         {             //Put your core logic here             double mercado = 100000 * Indicators.AverageTrueRange(MarketSeries, atrPeriod, MovingAverageType.VIDYA).Result.Last(0);             double will = 100 + Indicators.WilliamsPctR(wrPeriod).Result.Last(0);             ChartObjects.DrawText("", "Market:" + mercado.ToString() + "WillR:" + will.ToString(), StaticPosition.BottomRight, Colors.White);             if ((will < wLow) && (mercado > atrMarketMin) && (mercado < atrMarketMax) && _movingAverage.Result.IsRising())             {                 System.Threading.Thread.Sleep(1000);                 var result = ExecuteMarketOrder(TradeType.Buy, Symbol, InitialVolume, cBotLabel, StopLoss, 100, 2, mercado.ToString() + "-" + will.ToString());             }             if ((will > wHigh) && (mercado > atrMarketMax) && (mercado < atrMarketMax) && _movingAverage.Result.IsFalling())             {                 System.Threading.Thread.Sleep(1000);                 var result = ExecuteMarketOrder(TradeType.Sell, Symbol, InitialVolume, cBotLabel, StopLoss, 100, 2, mercado.ToString() + "-" + will.ToString());             }             // Trailing Stop for all positions             SetTrailingStop();             TimerClose();         }         #endregion         private void SetTrailingStop()         {             var sellPositions = Positions.FindAll(cBotLabel, Symbol, TradeType.Sell);             foreach (Position position in sellPositions)             {                 double distance = position.EntryPrice - Symbol.Ask;                 if (distance < TakeProfit * Symbol.PipSize)                     continue;                 double newStopLossPrice = Symbol.Ask + TrailingStop * Symbol.PipSize;                 if (position.StopLoss == null || newStopLossPrice < position.StopLoss)                     ModifyPosition(position, newStopLossPrice, position.TakeProfit);             }             var buyPositions = Positions.FindAll(cBotLabel, Symbol, TradeType.Buy);             foreach (Position position in buyPositions)             {                 double distance = Symbol.Bid - position.EntryPrice;                 if (distance < TakeProfit * Symbol.PipSize)                     continue;                 double newStopLossPrice = Symbol.Bid - TrailingStop * Symbol.PipSize;                 if (position.StopLoss == null || newStopLossPrice > position.StopLoss)                     ModifyPosition(position, newStopLossPrice, position.TakeProfit);             }         }         private void TimerClose()         {             foreach (Position position in Positions)             {                 int mPosition = (position.EntryTime.Hour * 60) + position.EntryTime.Minute + maxTime;                 int mActual = (Time.Hour * 60) + Time.Minute;                 //Si es que pasaron X min, entonces reevalua Buy (Abajo). Deja de insistir?                 if (mPosition < mActual)                     ClosePosition(position);                 //Si es que pasaron X min, entonces reevalua Sell (Arriba). Deja de insistir?                 if (mPosition < mActual)                     ClosePosition(position);             }         }     } }
11 Dec 2014
Downloads
694
Comments
0
Rating
0
Download
//Date: 02/12/2014 //Country: Chile //Copyright: Felipe Sepulveda Maldonado  //LinkedIn: https://cl.linkedin.com/in/felipesepulvedamaldonado //Facebook: https://www.facebook.com/mymagicflight1 //Whats Up: +56 9 58786321 //Donations Wallet: wallet.google.com felipe.sepulveda@gmail.com // //Recomended Timeframe: Minute, for more frequency and accuracy. //Cheers! using System; using System.Linq; using cAlgo.API; using cAlgo.API.Indicators; using cAlgo.API.Internals; using cAlgo.Indicators; namespace cAlgo {     [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]     public class Xkalibur : Robot     {         [Parameter("Volume", DefaultValue = 2000, MinValue = 1000)]         public int InitialVolume { get; set; }         [Parameter("Stop Loss", DefaultValue = 16, MinValue = 4, MaxValue = 32)]         public int StopLoss { get; set; }         [Parameter("Take Profit", DefaultValue = 4, MinValue = 3, MaxValue = 12)]         public int TakeProfit { get; set; }         [Parameter("WilliamsR High", DefaultValue = 85, MinValue = 80, MaxValue = 99)]         public int wHigh { get; set; }         [Parameter("WilliamsR Low", DefaultValue = 15, MinValue = 1, MaxValue = 20)]         public int wLow { get; set; }         [Parameter("WilliamsR Period", DefaultValue = 14, MinValue = 7, MaxValue = 21)]         public int wPeriod { get; set; }         [Parameter("True Range Impact", DefaultValue = 20, MinValue = 15, MaxValue = 100)]         public int trImpact { get; set; }         protected override void OnStart()         {             // Put your initialization logic here         }         protected override void OnTick()         {             // Put your core logic here             double will = 100 + Indicators.WilliamsPctR(wPeriod).Result.Last(0);             double impact = 100000 * Indicators.TrueRange(MarketSeries).Result.Last(0);             var text = "Impacto: " + impact.ToString();             text += "\nWilliamsR%: " + will.ToString() + "\n Timeframe: " + MarketSeries.TimeFrame.ToString();             ChartObjects.DrawText("", text, StaticPosition.TopLeft, Colors.White);             if ((will < wLow) && (impact > trImpact))             {                 var result = ExecuteMarketOrder(TradeType.Buy, Symbol, InitialVolume, "bot", StopLoss, TakeProfit, 2, "comentario");                 if (!result.IsSuccessful)                     Print("error : {0}, {1}", result.Error, InitialVolume);             }             if ((will > wHigh) && (impact > trImpact))             {                 var result = ExecuteMarketOrder(TradeType.Sell, Symbol, InitialVolume, "bot", StopLoss, TakeProfit, 2, "comentario");                 if (!result.IsSuccessful)                     Print("error : {0}, {1}", result.Error, InitialVolume);             }             System.Threading.Thread.Sleep(2000);         }         protected override void OnStop()         {             // Put your deinitialization logic here         }     } }
02 Dec 2014
Downloads
773
Comments
1
Rating
0
Download
Robot places buy and sell STOP orders at specific time. Supports TP, SL, OCO and expiration time. Parameters: News Hour - Hour when news will be published (your local time) News Minute - Minute when news will be published (your local time) Pips away - The number of pips away from the current market price where the pending buy and sell orders will be placed. Take Profit - Take Profit in pips for each order Stop Loss - Stop Loss in pips for each order Volume - trading volume Seconds before - Seconds Before News when robot will place Pending Orders Seconds timeout - Seconds After News when Pending Orders will be deleted One Cancels Other - If "Yes" then when one order will be filled, another order will be deleted News Robot PRO with Trailing Stop and Slippage Control:  http://news-robot.net        
05 Nov 2014
Downloads
7792
Comments
65
Rating
4.58
Download
Modify all positions to one TP and SL by average price   //    Modify all TakeProfit and StopLoss by Average Price. "Aggressive Trading" //    salr22@hotmail.com, www.borsat.net
by salr22
06 Sep 2014
Downloads
1098
Comments
2
Rating
0
Download
Lets find the best settings. im gone add the best settings lets work together to find the best settings and make some cash :)    
18 Jul 2014
Downloads
1448
Comments
13
Rating
2.5
Download
This cBot allows traders to send their signals from any metatrader (MT4/5) platform to an unlimited amount of cTrader platforms ( Limited to available RAM resources on instance) through reading/writing to a CSV file. MT4/5 writes the trading activity to csv file, while cAlgo reads the file to copy the trades.  siamfx - July 04, 2014 @ 04:14 Error: - Copy and paste over existing code in catch (Exception e) with the code below.    catch (Exception e) { Print("Exception: " + e.Message); return; }       MT EA loops every 250ms for new trading activity  cBot will open and close Market orders to match the csv file No additional trading can be performed on ctrader slave.  All trading must be done on the master MT account. Limited to one MT master account with unlimited cTrader accounts  Trader passwords required for access of all accounts and designed for Server Based.  You will need to update the Orders Input File Path: Unique for every PC Sample: C:\\Users\\trader\\AppData\\Roaming\\MetaQuotes\\Terminal\\69420FB8433504FEA0FA029C390238DB\\MQL4\\Files\\TradeCopy.csv Version 1.0: Todo list includes Add Market Depth  Use Limit Orders Only Positive Slippage   This is the MetaTrader EA below - download. Copy this code into a new Experts sample, paste, compile. Attach to M1 chart. Only 1 chart to trade ALL currency pairs. MT4 - Build 600+ -July 2014  (old source -http://code.google.com/p/mt4-trade-copy/) http://siamfx.net/wp-content/uploads/2014/07/MT2cTrader_MT2.zip
by siamfx
14 Jul 2014
Downloads
916
Comments
10
Rating
2.5
Download
MT4 to cTrader Trade Copier is designed to copy MT4 trades from any demo or live MT4 account to any demo or live cTrader account.  MT4 Investor Password is enough to start copying trades right now. Website: http://mt2ct.com/
by mt2ct
02 Jul 2014
Downloads
1125
Comments
25
Rating
0
Download
This cBots dumps trendbars data to CSV file. Instructions: create an instance open backtesting tab choose max available date range backtest cBot CSV format: time, open, high, low, close, volume In OnStop method cBot will flush all market series data to the CSV file on your Desktop.
10 Jun 2014
Downloads
946
Comments
3
Rating
5
Download
cBot that automatically opens a counter trade as soon as an original trade is opened. private const string Label = "CounterTrade"; protected override void OnStart() { Positions.Opened += OnPositionsOpened; } void OnPositionsOpened(PositionOpenedEventArgs args) { var originalPosition = args.Position; if (originalPosition.Label != Label) { var tradeType = originalPosition.TradeType == TradeType.Buy ? TradeType.Sell : TradeType.Buy; ExecuteMarketOrder(tradeType, Symbol, originalPosition.Volume, Label); } }  
27 May 2014
Downloads
874
Comments
3
Rating
2.5
Download
Uses simple moving average and stochastic oscillator to find a good trade opportunity testet using GBPUSD symbol and 5m chart. Use at own risk
by Zephyn
02 May 2014
Downloads
2077
Comments
9
Rating
0
Download
Adaptive Center of Gravity Robot. Based on Adaptive CG Indicator. Similar to Stochastic Center of Gravity. The algorithm references Cycle Period Indicator.   http://ctdn.com/algos/indicators/show/128
14 Jan 2014
Downloads
1913
Comments
1
Rating
0
Download