jumpycalm's avatar
jumpycalm
jumpycalm's avatar

Info

Username:jumpycalm
Name:jumpycalm
Member since: 28 Mar 2019
Country:Canada

Favorite symbols:

EURUSD, GBPUSD, USDJPY, USDCHF, GBPJPY, USDCAD

About

None

Signature

None

Last Algorithm Comments

@holy -\(*.*)/- Grail:  28 Jul 2019, 00:49


This is a fake indicator. The buy and sell signals are painted 2 bars before the current bar. i.e. If we already know the price goes up, we paint a buy signal on the bar 2 bars before the current bar.

@Smart Grid V3:  08 Jul 2019, 05:00


Hi Bave, Post your recommendation in this post or send me an email. I am working on a new bot based on similar concept as this one.

@Power Ranger:  11 Jun 2019, 19:17


Nice job!

@Smart Grid V3:  04 Jun 2019, 16:47


Thank you jamestryke, I believe what you are trying to achieve is called reverse Martingale, I actually tried your method before I posted the code to ctrader.com, but that method did not help on reducing drawdown, on the contrary, it introduced more drawdown. I already have a more advanced version compare to this one and I will post it on ctrader.com as soon as cTrader 3.5 is rolled out on majority brokers. As of this time, I tried many brokers, only Trader’s Way upgraded to 3.5. So, the majority brokers will roll out 3.5 very soon. My guess is the next couple of weeks.

@Manual Strategy Tester with Source Code:  09 May 2019, 17:11


Nice job!

@Smart Grid:  17 Apr 2019, 04:56


Hi guys, this is probably the most mentioned and most popular cBot on cTrader. I have re-written the code and posted the code on github. Since the comments on this page is very long. I also created a new cBot link on ctrader.com, you guys can post any new comment on the new page. Very special thanks to SaifBD for posting the very original code on to ctrader.com, that made the version 1 of the code Special thanks to Candeias for re-writing the decompiled code to more human readable code which made the version 2 of the code. Below are the improvements for the new code. 1. Code has been cleaned up and shortened to half, from over 400 lines to 200 lines. I added some comments in the code for easier understanding on the cBot; 2. Open buy and open sell Boolean was replaced with maximum open buy and sell number. For example, if you predict future is bullish market, set Maximum open sell position to 0; 3. The long-awaited stop loss was added. However, setting up stop loss is not recommended. If you don't need to enable stop loss, set stop loss to a very large number; 4. Setup parameters were grouped, new feature for cTrader 3.5 5. Added close all trade on stop flag to easy back test and forward test cBot. Currently, cTrader backtester does not show equity with open position when cBot stopped. So, this feature is crucial for accurate back test. 6. cTrader does not handle order take profit well, so, instead of setting a take profit value, this version will check open position on each tick and will execute close order then condition met. 7. I only back tested with this cBot, so, the chart drawing function was not tested. Chart drawing code was the original code from version 2. https://ctrader.com/algos/cbots/show/1880

@Renko on Time/Tick/Range Chart:  11 Apr 2019, 18:05


afhacker did not post his code on the website, it's difficult to know how his indicator works. If you can find the source code for supply and demand, I may able to figure out and potentially integrate it with this indicator for better visualization. Also, try range chart and tick chart, they are not time based.

Last Forum Posts

@Easier Way To Get Open Position Volume:  09 Sep 2019, 17:39


Panagiotis Charalampous said:

Hi jumpycalm,

See below

            var buyTotalVolume = Positions.Where(x => x.TradeType == TradeType.Buy).Sum(x => x.VolumeInUnits);
            var sellTotalVolume = Positions.Where(x => x.TradeType == TradeType.Sell).Sum(x => x.VolumeInUnits);

Best Regards,

Panagiotis

Very helpful, thank you for the quick response!

@Easier Way To Get Open Position Volume:  09 Sep 2019, 17:32


Hi Panagiotis, quick question. Suppose I have multiple open position, for example 1000 unit buy, 3000 unit buy, and 5000 unit sell position open, I want to cBot find the total buy direction volume (in this case 4000 unit) and total sell direction volume (in this case 5000) unit. One way to do is to use foreach to loop through all the buy and sell positions, see code below. My question for you is is there an easier way to do? Such as something like this "buyTotalVolume = Positions.TotalVolumeInUnits.TradeType.Buy"?

int buyTotalVolume = 0;
int sellTotalVolume = 0;
foreach (var position in Positions)
{
  if (position.SymbolName == SymbolName && position.TradeType == TradeType.Buy)
      buyTotalVolume += (int) position.VolumeInUnits;
}
foreach (var position in Positions)
{
   if (position.SymbolName == SymbolName && position.TradeType == TradeType.Sell)
       sellTotalVolume += (int)position.VolumeInUnits;
}
Print("buyTotalVolume = {0}, sellTotalVolume = {1}", buyTotalVolume, sellTotalVolume);

@Visual Studio 2019 Support Workaround:  27 Jun 2019, 03:50


As of today, most cTrader brokers upgraded cTrader to 3.5, cTrader 3.5 brings new API and new look, good job Spotware!

If you are a prorammer, it's a good time to move to Visual Studio 2019! But cTrader does not officially support Visual Studio 2019.

Short version: Simply download cTrader 3.5 Automate extension for Visual Studio 2019 from this page, double click on it to install the Visual Studio plug in, then you will be able to develop cBots and indicators in Visual Studio 2019.

Long version if you want to do everything from scratch: The workaround is to modify the VSExtension.vsix file. Try to install the extension to Visual Studio 2019. You will get an error message, but when you see the error message, it's a good time to see the location of the VSExtension.vsix file. You simple need to unzip the VSExtension.vsix file (yes, the .vsix file is just a zip file, you can unzip it with 7-Zip or simply change extension to .zip), then you need to modify the following three files: catalog.json, extension.vsixmanifest and manifest.json. Just remove "16.0" from all three documents, then save all three documents, then zip all the files together, then change extension back to .vsix. Then simply double click on the file to install it.

@How to feed indicator data before cBot starts?:  08 May 2019, 17:28


Panagiotis Charalampous said:

Hi,

At the moment the formula to retrieve previous bars is the following

Backtesting start date - 100 * minutes in timeframe - 3 days

If your indicator needs more data than that, then you will have this issue. However we are looking into changing this behavior in the future.

Best Regards,

Panagiotis

Thank you Panagiotis for your prompt reply. I will just select earlier dates as a workaround for now.

@How to feed indicator data before cBot starts?:  08 May 2019, 02:38


Hi Panagiotis,

Just quick question. All indicators will need to collect some data first before able to show on the chart. Moving average for example, if moving average is set to 200 periods, the indicator will not form untill 200 period passed. Which means, if I use this type of indicator, cBot will not open trade untill 200 candle bars have passed? Is there any way to feed cBot with data before cBot start, for example, if I use 200 moving average, I get the moving average data right after I start cBot? I have attached screenshot and code to explain this. This cBot will open buy position on each candle bar when price is above 200 moving average for demostration.

using cAlgo.API;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;

namespace cAlgo.Robots
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class NewcBot : Robot
    {
        private MovingAverage movingAverage;

        protected override void OnStart()
        {
            movingAverage = Indicators.MovingAverage(MarketSeries.Close, 200, MovingAverageType.Simple);
        }

        protected override void OnBar()
        {
            if (Symbol.Bid > movingAverage.Result.LastValue)
            {
                ExecuteMarketOrder(TradeType.Buy, SymbolName, 1000, "NewcBot", 20, 20);
            }
        }

        protected override void OnStop()
        {
            foreach (var position in Positions)
            {
                if (position.SymbolName == SymbolName && position.Label == "NewcBot")
                    ClosePosition(position);
            }
        }
    }
}

@cTrader.com Website Paid and Free cBots and Indicators:  06 May 2019, 15:26


Hi team,

Can you please separate paid and free cBots and indicators from cTrader’s website? Most newly uploaded cBots and indicators are paid version. But you included a download button, the cBots and indicators uploaded by paid companies are just some dummy code and has no functions. It’s best if you can separate them. All free cBots and indicators come with source code, all paid cBots and indicators come with just the compiled trial version. That way, it’s good for the end user and it’s good for the developers as well.

@cTrader.com Website Indicator cBot Paid and Free cBots and Indicators:  02 May 2019, 04:45


Hi team,

Can you please separate paid and free cBots and indicators from cTrader’s website? Most newly uploaded cBots and indicators are paid version. But you included a download button, the cBots and indicators uploaded by paid companies are just some dummy code and has no functions. It’s best if you can separate them. All free cBots and indicators come with source code, all paid cBots and indicators come with just the compiled trial version. That way, it’s good for the end user and it’s good for the developers as well.

@cTrader 3.5 Report a Bug:  02 May 2019, 04:38


Seriouely nobody from cTrader team takes a look at this issue?

@cTrader 3.5 Report a Bug:  26 Apr 2019, 21:46


Hi cTrader team.

Im starting this thread for two issues:

1. You have problem with your bug report process. I found a bug in cTrader 3.5 beta and would like to report a bug but did not find the correct channel to do so. I tried to click on the "Feedback" icon inside cTrader 3.5 beta, it leads to me this page: http://vote.spotware.com but on the page, it said to report a bug, I need to click on "Feedback" icon inside cTrader 3.5. "- To report a bug or ask questions, please use the ‘Feedback’ button inside the platforms."This is deadloop which leads to nowhere to report a bug.

2. The actual bug I found is the Optimization function of cTrader Automate. The bug is If you have a setting name very long, the optimization result will not show the vaule of the setting. See attached screenshot. To reproduct the issue, simply use any cBot, change one of the setting names to a very long name and optimize that setting.

@Problem with Visual Studio 2019:  23 Apr 2019, 16:43


For you guys who is planing to develop on Visual Studio 2019. I tried the workaround the first day Visual Studio 2019 came out but no success. Looks like we have to wait for cTrader's official support on Visual Studio 2019.

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.
free  01 Jul 2019
This is the original "Stochastic Slow Strategy" From Tradingview, all the default parameters are the default parameters from Tradingview, for your reference, below is the official code from Tradingview, I wrote the cTrader indicator based on the original code with no modification. Enjoy! //@version=4 strategy("Stochastic Slow Strategy", overlay=true) length = input(14, minval=1) OverBought = input(80) OverSold = input(20) smoothK = 3 smoothD = 3 k = sma(stoch(close, high, low, length), smoothK) d = sma(k, smoothD) if (not na(k) and not na(d)) if (crossover(k,d) and k < OverSold) strategy.entry("StochLE", strategy.long, comment="StochLE") if (crossunder(k,d) and k > OverBought) strategy.entry("StochSE", strategy.short, comment="StochSE") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) I am a software developer, I work for myself, there's no middleman involved. If you have a strategy and would like me to write the code for you. I can offer you the best price in the market. I only write cBot and cTrader indicators. I do not write MT4 and MT5 code. For business contact, email me at info@mrkeyfob.com
free  08 Apr 2019
Renko chart is very powerful on trend analysis as renko chart filters noise. However, you can not see the detailed price movement inside each traditional renko brick. This indicator will plot renko chart on top of traditional chart. Therefore you will see the detailed price movement inside the renko brick. When price moves very fast, the renko brick is small, then price moves slow, the renko brick becomes big. This indicator works best on small tick chart, range chart as well as small time frame of time chart. Any question or suggestions, leave comments below.
Warning! Executing cBots downloaded from this section may result in loss of funds. Use them at your own risk.
Simple Grid
  5
  0
  2521
free  08 Jul 2019
This cBot is very simple but will make you great profit in the long run. Great for trading Forex as an investment. Please only run this cBot in the direction you have positive swap since this cBot will hold each position for very long time. In this example, IC Markets has positive swap in the short position for EURUSD, therefore, you run this bot in the short position. During the last 1 year's back test, the cBot trippled your account. This bot works on other pairs and other products as well. I am a software developer, I work for myself, there's no middleman involved. If you have a strategy and would like me to write the code for you. I can offer you the best price in the market. I only write cBot and cTrader indicators. I do not write MT4 and MT5 code. For business contact, email me at info@mrkeyfob.com  
Smart Grid V3
  27
  5
  3486
free  22 Jun 2019
Very special thanks to SaifBD for posting the very original code on to ctrader.com, that made the version 1 of the code https://ctrader.com/algos/cbots/show/876 Special thanks to Candeias for re-writing the decompiled code to more human readable code which made the version 2 of the code. Also, very thanks to Panagiotis Charalampous, every time I encountered cBot programing issue and try to search online, I will always find your useful code and suggestions posted on cTrader forum! Many thanks to the folks’ comments on ctrader.com to made improvements on this code. I re-wrote the code and shortend the code by more than half thanks to the use of System.Linq Namespaces. This cBot works best with 15 minutes chart. Default parameters are optimized for EURUSD and GBPUSD. This project is on GitHub as well https://github.com/jumpycalm/jumpycalm-cBot-Grid-V3 Change logs: 20190416 (Version 3.0) This is the first version, code is based on the code written by Candeias (Version 2). Some changes below: 1. Code was cleaned up and code was modified to work on cTrader 3.5. The code is not backwards compatible with older version of cTrader; 2. Open buy and open sell Boolean was replaced with maximum open buy and sell number. For example, if you predict future is bullish market, set Maximum open sell position to 0; 3. The long-awaited stop loss was added. However, setting up stop loss is not recommended. If you don't need to enable stop loss, set stop loss to a very large number; 4. Setup parameters were grouped, new feature for cTrader 3.5 5. Added close all trade on stop flag to easy back test and forward test cBot. Currently, cTrader backtester does not show equity with open position when cBot stopped. So, this feature is crucial for accurate back test. 6. cTrader does not handle order take profit well, so, instead of setting a take profit value, this version will check open position on each tick and will execute close order then condition met. 7. I only back tested with this cBot, so, the chart drawing function was not tested. Chart drawing code was the original code from version 2. Please leave comments below or post a pool on github. If you have coding background, feel free add your suggestions on github. I hope the whole community here makes a best grid cBot in the market. I am a software developer, I work for myself, there's no middleman involved. If you have a strategy and would like me to write the code for you. I can offer you the best price in the market. I only write cBot and cTrader indicators. I do not write MT4 and MT5 code. For business contact, email me at info@mrkeyfob.com