Topics
16 Jun 2019, 05:35
 1417
 5
06 Jun 2019, 17:34
 1255
 3
01 Jun 2019, 00:07
 2519
 2
16 May 2019, 04:33
 1513
 3
08 May 2019, 00:41
 1250
 3
07 May 2019, 13:26
 1104
 1
26 Apr 2019, 04:45
 1764
 5
24 Apr 2019, 21:34
 1126
 1
Replies

alexk
28 Dec 2018, 13:18

Ah!!! that might be true!! Looks like the DST occurs the first week in november and march for EST like I was experiencing.

https://www.timeanddate.com/worldclock/usa/new-york

Thank you.


@alexk

alexk
28 Dec 2018, 13:10

RE:

lec0456 said:

That won't work. I can not set the date upon which the candles are generated.  The daily candle is agregated according to the how your server establishes an open time and close time for the day.  That is the start of the trading day no matter what I set my time to.  There are time zone rules set by microsoft .net timezone object. I can get the rules but nothing I use is matching the rules you are currently using to agregate the daily data.

I mean:

I can not set the TIME upon which the candles are generated. 


@alexk

alexk
28 Dec 2018, 13:07

That won't work. I can not set the date upon which the candles are generated.  The daily candle is agregated according to the how your server establishes an open time and close time for the day.  That is the start of the trading day no matter what I set my time to.  There are time zone rules set by microsoft .net timezone object. I can get the rules but nothing I use is matching the rules you are currently using to agregate the daily data.


@alexk

alexk
28 Dec 2018, 12:13

RE:

lec0456 said:

Look at this chart

http://roboforex.ctrader.com/c/PKmPn

do you see where the horizontal lines stop before the horizontal line.  That is showing that the daily agregation closed at 21:00 UTC not not 22:00 on October 29, 2018.  The horizontal line is drawn at UTC 22:00.  So, it is not the start of the day.  

Sorry made a mistake, I meant to say:

do you see where the horizontal lines stop before the VERTICAL line.  That is showing that the daily agregation closed at 21:00 UTC not not 22:00 on October 29, 2018.  The VERTICAL line is drawn at UTC 22:00.  So, it is not the start of the day.  


@alexk

alexk
28 Dec 2018, 12:12

Look at this chart

http://roboforex.ctrader.com/c/PKmPn

do you see where the horizontal lines stop before the horizontal line.  That is showing that the daily agregation closed at 21:00 UTC not not 22:00 on October 29, 2018.  The horizontal line is drawn at UTC 22:00.  So, it is not the start of the day.  


@alexk

alexk
28 Dec 2018, 12:04

Now it changes at 22:00 UTC but after the first week in March it changes to 21:00 UTC all the way until the first week in November.

You can see the behavior using the daily series: Backtest a year usng the indicator below.  It will show exactly when the the agregated daily price opens and closes.

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

namespace cAlgo.Indicators
{
    [Indicator(IsOverlay = true, AutoRescale = false, TimeZone = TimeZones.UTC)]
    public class myDailyOCHL : Indicator
    {
        [Parameter(DefaultValue = false)]
        public bool HideWeeklyOCHL { get; set; }

        [Parameter(DefaultValue = false)]
        public bool HideDailyOCHL { get; set; }

        [Output("DailyHigh", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries DHigh { get; set; }

        [Output("DailyLow", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries DLow { get; set; }

        [Output("DailyOpen", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries DOpen { get; set; }

        [Output("DailyClose", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries DClose { get; set; }

        [Output("WeeklyHigh", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries WHigh { get; set; }

        [Output("WeeklyLow", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries WLow { get; set; }

        [Output("WeeklyOpen", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries WOpen { get; set; }

        [Output("WeeklyClose", Thickness = 0, PlotType = PlotType.Points, Color = Colors.Black)]
        public IndicatorDataSeries WClose { get; set; }

        private MarketSeries Daily;
        private MarketSeries Weekly;

        protected override void Initialize()
        {
            Daily = MarketData.GetSeries(TimeFrame.Daily);
            Weekly = MarketData.GetSeries(TimeFrame.Weekly);
        }

        public override void Calculate(int index)
        {
            if (index - 1 < 0)
                return;

            Colors DOCcolor;
            Colors WOCcolor;
            var weeklyindex = Weekly.OpenTime.GetIndexByTime(MarketSeries.OpenTime[index]);
            var dailyindex = Daily.OpenTime.GetIndexByTime(MarketSeries.OpenTime[index]);

            if (dailyindex > -1)
            {
                DHigh[index] = Daily.High[dailyindex];
                DLow[index] = Daily.Low[dailyindex];
                DOpen[index] = Daily.Open[dailyindex];
                DClose[index] = Daily.Close[dailyindex];

                if (!HideDailyOCHL)
                {
                    if (Daily.Open[dailyindex] < Daily.Close[dailyindex])
                        DOCcolor = Colors.Green;
                    else
                        //If a gain for the day use green
                        DOCcolor = Colors.Red;
                    //if a loss for the day use red
                    ChartObjects.DrawLine("DOpen" + index, index, DOpen[index], index + 1, DOpen[index], Colors.White, 1, LineStyle.DotsRare);
                    ChartObjects.DrawLine("DClose" + index, index, DClose[index], index + 1, DClose[index], DOCcolor, 1, LineStyle.DotsRare);
                    ChartObjects.DrawLine("DHigh" + index, index, DHigh[index], index + 1, DHigh[index], Colors.Orange, 1, LineStyle.DotsRare);
                    ChartObjects.DrawLine("DLow" + index, index, DLow[index], index + 1, DLow[index], Colors.Orange, 1, LineStyle.DotsRare);
                }
            }

            if (weeklyindex > -1)
            {
                WHigh[index] = Weekly.High[weeklyindex];
                WLow[index] = Weekly.Low[weeklyindex];
                WOpen[index] = Weekly.Open[weeklyindex];
                WClose[index] = Weekly.Close[weeklyindex];

                if (!HideWeeklyOCHL)
                {
                    if (Weekly.Open[weeklyindex] < Weekly.Close[weeklyindex])
                        WOCcolor = Colors.DarkGreen;
                    else
                        //If a gain for the week use blue
                        WOCcolor = Colors.Maroon;
                    //if a loss for the week use marroon
                    // Weekly Close is Blue if positive Marron if negetive
                    ChartObjects.DrawLine("WOpen" + index, index, WOpen[index], index + 1, WOpen[index], Colors.Yellow, 1, LineStyle.DotsVeryRare);
                    ChartObjects.DrawLine("wClose" + index, index, WClose[index], index + 1, WClose[index], WOCcolor, 1, LineStyle.DotsVeryRare);
                    ChartObjects.DrawLine("WHigh" + index, index, WHigh[index], index + 1, WHigh[index], Colors.Purple, 1, LineStyle.DotsRare);
                    ChartObjects.DrawLine("WLow" + index, index, WLow[index], index + 1, WLow[index], Colors.Purple, 1, LineStyle.DotsRare);
                }
            }
        }
    }
}

 


@alexk

alexk
27 Nov 2018, 11:30

This error has never appeared before the 3.3 update.  Also, the data was previously loaded by 3.0 and previous versions. It seems that the 3.3 update requires reloading the tick data.


@alexk

alexk
27 Nov 2018, 11:28

1. Live account

2. EURUSD

3. 1/1/16 - 1/7/16 however, it has appeared for earlier periods

4. M15

5. Tickdata

It seems to throw the error, then i have to keep running the backtest until it appears to load all the data at which point it starts to run.

 


@alexk

alexk
09 Nov 2018, 18:07

Panagiotis,

I am not sure why this is the policy at Spotware. For Indicators that are not proprietary, the code should be open-source. Verifying the calculations are important and customizing them is a benefit for traders.

Spotware used to provide the code for indicators, why has this changed and how does this benefit the business? Spotware gains nothing by hiding the code. Traders who are putting their money on the line should be able to see the calculations there trades are being based on.

 

Please raise these concerns to management and see if this is the something that can be changed.

 

Thanks,

Louis

 

 


@alexk

alexk
08 Nov 2018, 21:41

Can i get an answer please?


@alexk

alexk
31 Oct 2018, 11:21

yes, What email?


@alexk

alexk
31 Oct 2018, 08:47

platform not viable.

There is definately something wrong. Can I revert to the 3.0 installation. Its un-usable.Zooming in and out takes a long time along with everything else. Unchecking visual mode should revert to the old engine but it is not. Sorry to rain on this parade but I have been working with cTrader for atleast 7 yrs and I have never had an update that made the whole platform not viable.


@alexk

alexk
31 Oct 2018, 00:36

I do you some custom indicators but they have never caused the backtest chart to be slow after a backtest completes. I use an intel I7 processor. 16GB ram. Like I said, I test on multiple broker platforms so the difference is very noticable between say FIBO and ROBOFOREX which has not gotteh the update yet.


@alexk

alexk
29 Oct 2018, 13:37

how can I output the log to a file? Do you have an example?


@alexk

alexk
26 Oct 2018, 10:14

It would be nice if you could select the directory for the Backtest Data so that you could use the the Beta release to backtest data from different brokers. I could probalbly manually copy in the data into the tick directory but it would be too cumbersome.  but thanks for letting me know this is soon to be available.  its a very important and nice feature.


@alexk

alexk
26 Oct 2018, 09:33

Visual mode?? How do I change?


@alexk

alexk
26 Oct 2018, 09:30 ( Updated at: 21 Dec 2023, 09:20 )

my interface is different than yours?? and it doesn't work.  I am using 3 different brokers and none have your interface.


@alexk

alexk
26 Oct 2018, 05:31

RE:

lec0456 said:

I tried sing this line of code in my cBot at the point it takes an action:

ChartObjects.DrawVerticalLine("vLine"+OnBarIndex, (int)OnBarIndex, Colors.Red, 1, LineStyle.Solid);

It does not place a line on the backtest chart.

 

How do I do it?

 

i tried using(spelling)


@alexk

alexk
26 Oct 2018, 05:30

I tried sing this line of code in my cBot at the point it takes an action:

ChartObjects.DrawVerticalLine("vLine"+OnBarIndex, (int)OnBarIndex, Colors.Red, 1, LineStyle.Solid);

It does not place a line on the backtest chart.

 

How do I do it?

 


@alexk

alexk
24 Oct 2018, 09:01

Your function is returning a string but it is not using a string.  you don't need to pass in resul.  Just use empty parenthesis ()


@alexk