Warning! Executing cBots downloaded from this section may result in loss of funds. Use them at your own risk.How to install
How to install cBots & Indicators
- Download the Indicator or cBot.
- Double-click on the downloaded file. This will install all necessary files in cAlgo.
- Find the indicator/cbot you want to use from the menu on the left.
- Add an instance of the indicator/cBot to run.
- Download the Indicator
- Double-click on the downloaded file. This will install all necessary files in cTrader.
Select the indicator from Custom in the functions (f) menu in the top center of the chart
- Enter the parameters and click OK
The objective for this robot is not to develop a real trading robot but to point out the technical architecture and the communication process between cAlgo and an external dll.In order to bring the principle in the foreground, the chosen example is very simple and basic. It consist of a frame with 2 buttons representing the current Bid and Ask prices like the cTrader order button with exact the same prices. By pushing on of the buttons an entry in the cAlgo log frame will be printed (see attached video for more details).The frame application itself will be started from within cAlgo same as a robot, but is acting in a different thread and is therefore managed independent. In addition there is a bidirectional event handling taking care of cAlgo events and events from the external dll to communicate between both threads. You can imagine to adopt this approach to your own needs. I. e. for communication to third party products or intercommunication between different currency pairs respectively time frames.The external dll has been developed using Visual Basic .Net based on Visual Studio 2010 Express edition (free edition). If you intend to follow this example one by one you need to install at least this version of Visual Studio.Create a new project of type class library and copy & paste the following code. Align the code to your needs Imports System.Windows.Forms 'the communication layer between cAlgo and the frame application Public Class ThreadHandler Private sMesText As String Private iDigs As Integer 'declaring the frame application with event handling Private WithEvents myForm As externalForm Public Event ButtonBuyClicked() Public Event ButtonSellClicked() 'constructor for frame application with overloading parameters Public Sub New(ByVal sMsgTxt As String, iDigits As Integer) sMesText = sMsgTxt iDigs = iDigits End Sub 'start the frame application Public Sub Work() 'use the windows visual style Application.EnableVisualStyles() Application.DoEvents() myForm = New externalForm myForm.Text = sMesText myForm.ShowDialog() End Sub Public Sub setButtonText(ByVal cTxt As String, dPrice As Double) 'passing the price from cAlgo to the form application myForm.SetButtonText(cTxt, dPrice) End Sub Private Sub myForm_ButtonBuyClicked() Handles myForm.ButtonBuyClicked 'passing the button click event from frame application to cAlgo RaiseEvent ButtonBuyClicked() End Sub Private Sub myForm_ButtonSellClicked() Handles myForm.ButtonSellClicked 'passing the button click event from frame application to cAlgo RaiseEvent ButtonSellClicked() End Sub End Class Then create a new frame, paste 2 buttons and copy & paste the following code. Align the code to your needs. Imports System.Windows.Forms Public Class externalForm Public Event ButtonSellClicked() Public Event ButtonBuyClicked() Public Delegate Sub dlSetButtonText(ByVal cTxt As String, ByVal dPrice As Double) Private Sub ButtonSell_Click(sender As System.Object, e As System.EventArgs) Handles ButtonSell.Click RaiseEvent ButtonSellClicked() End Sub Private Sub ButtonBuy_Click(sender As System.Object, e As System.EventArgs) Handles ButtonBuy.Click RaiseEvent ButtonBuyClicked() End Sub Public Sub SetButtonText(ByVal cTxt As String, ByVal dPrice As Double) Dim myCont As Control() 'external application (cAlgo) tries to call the frame application. invocation is required myCont = Me.Controls.Find(cTxt, True) If myCont.Count = 0 Then Exit Sub If myCont(0).InvokeRequired Then myCont(0).Invoke(New dlSetButtonText(AddressOf SetButtonText), cTxt, dPrice) Else 'after invocation and 'recall' of the sub the button text can be set myCont(0).Text = dPrice.ToString End If End Sub End Class
27 Feb 2013
This robot is intended to be used as a sample and does not guarantee any particular outcome or profit of any kind. Use it at your own risk.
19 Dec 2012
Uses the MACD Histogram and Signal line for buy and sell signals.
24 Sep 2012
Opens a Long position when sma crosses below the trend bars and a short position if it crosses above. One position open at a time. Works best with Timeframes H1 and above. Good Luck!
14 Sep 2012
This is based on Johnan Prathap’s article in this issue, “Three-Bar Inside Pattern”.
06 Aug 2012
The Artificial Intelligence robot creates trades based on the result of the previous ones. It uses the MACD Indicator to calculate the direction of the trade the first time and then continues based on this as well as the outcome of the closed positions.
16 Mar 2012