Replies

komposter
19 Nov 2019, 09:52

I had no errors since start. It seems, bug is fixed.

Thank you.

 

Are you going to add backtesting on Renko-charts?


@komposter

komposter
13 Nov 2019, 12:02

RE:

Panagiotis Charalampous said:

Hi Andrii,

We have released the update on all brokers. You can test on your broker as well if you wish.

Best Regards,

Panagiotis

Testing on Spotware cTrader Beta since yesterday, so far so good.


@komposter

komposter
11 Nov 2019, 11:28

RE:

Panagiotis Charalampous said:

Hi Andrii,

At the moment only Spotware cTrader Beta contains the fix. Your cTrader should be automatically updated.

Best Regards,

Panagiotis

I've started my Bot. Will let you know how it goes soon.


@komposter

komposter
11 Nov 2019, 11:21

RE:

Panagiotis Charalampous said:

Hi all,

This should have been solved in the latest update we released for Spotware cTrader Beta. Can you please also check and let us know if you face any issues?

Best Regards,

Panagiotis

How can I check version number?

What version contains this fix?


@komposter

komposter
28 Mar 2019, 09:39

RE:

Panagiotis Charalampous said:

Hi Andrii,

I have been running this since yesterday but I still cannot catch it. Can you please send me an email at community@spotware.com so that we can coordinate this investigation further?

Best Regards,

Panagiotis

Done


@komposter

komposter
27 Mar 2019, 22:24 ( Updated at: 21 Dec 2023, 09:21 )

I've got an update for both platforms today and already catched frozen indicator in 3.5:


@komposter

komposter
26 Mar 2019, 20:54

Thank you!

Problem with indicator has nothing the same with chart problem.

Waiting for upgrade.


@komposter

komposter
25 Mar 2019, 23:17 ( Updated at: 21 Dec 2023, 09:21 )

Frozen indicator in both 3.3 and 3.5 detected again (chart continued to refresh):


@komposter

komposter
25 Mar 2019, 09:43 ( Updated at: 21 Dec 2023, 09:21 )

I catched frozen chart again in 3.5.

It just didn't start refresh after weekends:


@komposter

komposter
22 Mar 2019, 01:03

Ok.

Hope, previously described bug with frozen chart will be fixed too.


@komposter

komposter
21 Mar 2019, 17:38

RE:

Panagiotis Charalampous said:

Regarding the RSI indicator, the two cTrader instances do not necessarily have the same price history.

You're right, charts are different.

How to connect both terminals to one liquidity provider to have the same quotes?


@komposter

komposter
21 Mar 2019, 14:46 ( Updated at: 21 Dec 2023, 09:21 )

RE:

Panagiotis Charalampous said:

Regarding the RSI indicator, the two cTrader instances do not necessarily have the same price history.

It's renko!

I checked bars extremums, they are the same:

 


@komposter

komposter
21 Mar 2019, 14:30 ( Updated at: 21 Dec 2023, 09:21 )

Another bug — different indicator values on the same price history:

 

 

Both RSIs based on Close prices and have period of 14


@komposter

komposter
20 Mar 2019, 20:47

The same bug in the latest beta — renko cahrt doesn't update after start: https://youtu.be/jxgssXaX1ew

I've modified bot to use 1st and 2nd bars because new renko chart draws zero bar while it formes, but first problem is frozen chart.

Code for newest cTrader:

using System;
using System.Linq;
using cAlgo.API;
using cAlgo.API.Indicators;
using cAlgo.API.Internals;
using cAlgo.Indicators;

namespace cAlgo.Robots
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class RenkoTest : Robot
    {
        [Parameter("RSI Price")]
        public DataSeries Source { get; set; }

        [Parameter("RSI Period", DefaultValue = 14)]
        public int Periods { get; set; }

        [Parameter("Lots", DefaultValue = 0.1, MinValue = 0.01, Step = 0.01)]
        public double Quantity { get; set; }

        [Parameter("SL (in renko)", DefaultValue = 2, MinValue = 1, Step = 0.1)]
        public double StopLoss { get; set; }

        [Parameter("TP (in renko)", DefaultValue = 4, MinValue = 1, Step = 0.1)]
        public double TakeProfit { get; set; }

        private RelativeStrengthIndex rsi;
        private int signal = 0;

        protected override void OnStart()
        {
            rsi = Indicators.RelativeStrengthIndex(Source, Periods);
            Print("The current symbol has pip size of: {0}, renko size = {1}", Symbol.PipSize, getRenkoSize());
        }

        protected override void OnTick()
        {
            if (signal > 0)
            {
                Close(TradeType.Sell);
                Open(TradeType.Buy);
            }
            else if (signal < 0)
            {
                Close(TradeType.Buy);
                Open(TradeType.Sell);
            }
        }

        protected override void OnBar()
        {
            CalcSignal();

            double o = MarketSeries.Open.Last(1);
            double c = MarketSeries.Close.Last(1);
            if (c > o)
                Print("Bullish bar: {0} -> {1}, signal = {2}, rsi[0] = {3}, rsi[1] = {4}", o, c, signal, rsi.Result.Last(1), rsi.Result.Last(2));
            else if (c < o)
                Print("Bearish bar: {0} -> {1}, signal = {2}, rsi[0] = {3}, rsi[1] = {4}", o, c, signal, rsi.Result.Last(1), rsi.Result.Last(2));
            else
                Print("Doj bar: {0} -> {1}, signal = {2}, rsi[0] = {3}, rsi[1] = {4}", o, c, signal, rsi.Result.Last(1), rsi.Result.Last(2));
        }

        private void CalcSignal()
        {
            signal = 0;
            if (rsi.Result.HasCrossedAbove(40, 1))
            {
                signal = 1;
                Close(TradeType.Sell);
                Open(TradeType.Buy);
            }
            else if (rsi.Result.HasCrossedBelow(60, 1))
            {
                signal = -1;
                Close(TradeType.Buy);
                Open(TradeType.Sell);
            }
        }

        private void Close(TradeType tradeType)
        {
            foreach (var position in Positions.FindAll("Renko Test", Symbol, tradeType))
                ClosePosition(position);
        }

        private void Open(TradeType tradeType)
        {
            var position = Positions.Find("Renko Test", Symbol, tradeType);
            var volumeInUnits = Symbol.QuantityToVolume(Quantity);
            var SL = Math.Round(getRenkoSize() * StopLoss, 1);
            var TP = Math.Round(getRenkoSize() * TakeProfit, 1);

            if (position == null)
                ExecuteMarketOrder(tradeType, Symbol, volumeInUnits, "Renko Test", SL, TP);
        }

        private double getRenkoSize()
        {
            return (Math.Round(Math.Abs(MarketSeries.Open.Last(1) - MarketSeries.Close.Last(1)) / Symbol.PipSize, 0));
        }
    }
}

 


@komposter

komposter
18 Mar 2019, 12:44

RE:

Panagiotis Charalampous said:

Please download it and check if the behavior you reported is still reproduced or has been fixed. This version will be pushed to brokers soon. If the problem is fixed there, there is no reason to investigate further.

Ok, I'll try.

But this bug is floating, so I need time to catch it.


@komposter

komposter
18 Mar 2019, 12:01

RE:

Panagiotis Charalampous said:

Hi Andrii, 

Yes you can download cTrader Beta version from https://spotware.com/beta/

Best Regards,

Panagiotis

Should I download it just to report a bug?


@komposter

komposter
18 Mar 2019, 11:56

RE: RE:

Panagiotis Charalampous said:

komposter said:

Another issue with renko chart.

I've launched cTrader, started my bot... but chart didn't draw new bars till restart!

I've recorded the video — https://youtu.be/1gD1KNniXDQ

Hi Andrii,

We will have a look at this. Can you reproduce this issue on Spotware cTrader Beta as well?

Best Regards,

Panagiotis

Thank you for reply!

I can't find siutable place for report on https://spotware.com/beta/

Should I register there?


@komposter

komposter
18 Mar 2019, 11:32

Another issue with renko chart.

I've launched cTrader, started my bot... but chart didn't draw new bars till restart!

I've recorded the video — https://youtu.be/1gD1KNniXDQ


@komposter

komposter
13 Mar 2019, 21:18 ( Updated at: 21 Dec 2023, 09:21 )

Again the same:

 

Any ideas?


@komposter

komposter
08 Mar 2019, 15:12 ( Updated at: 21 Dec 2023, 09:21 )

Bot worked without pauses ever since I wrote the post.

It printed old values of indy till 07/03 20:17 and then started to print correct values (and trade, of course):

 

First time it printed invalid value of RSI[0], but then started to work correctly.

 

Any ideas how to fix it?


@komposter