Replies

PanagiotisCharalampous
29 Oct 2018, 11:27

Hi nguyendan81985,

Could you please let us know the symbol as well so that I can reproduce this behavior in backtesting?

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Oct 2018, 11:18

Hi Sasha,

This is not a bug. As the message says this function is not supported in backtesting.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Oct 2018, 11:12

Hi nguyendan81985,

You can check Visual Backtesting which included in Spotware Beta.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Oct 2018, 11:03

Hi Shawn,

I have forwarded your suggestions to the product team for consideration. I would also suggest that you post them in vote.spotware.com so that other traders can vote them as well. Popular suggestions have more chances to get implemented.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 11:28

Hi Sasha, 

You can just check this condition before executing an order.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 10:14

Hi Sonar Trades,

Symbol.Ask - Symbol.Bid should give you the spread. Let me know if this is what you were looking for.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:43

Use Spotware Beta


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:43 ( Updated at: 21 Dec 2023, 09:20 )

Here it is


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:39

Hi tradingu,

Yes you can. We already started rolling out 3.3 to some brokers.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:29

Hi nguyendan81985,

See below

using System;
using System.Collections.Generic;
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 NewcBot : Robot
    {
        [Parameter(DefaultValue = 0.0)]
        public double Parameter { get; set; }

        ExponentialMovingAverage _ema;
        protected override void OnStart()
        {
            _ema = Indicators.ExponentialMovingAverage(MarketSeries.Close, 34);
        }

        protected override void OnTick()
        {
            if (MarketSeries.Close.HasCrossedAbove(_ema.Result, 1))
                ExecuteMarketOrder(TradeType.Buy, Symbol, 1000);
            if (MarketSeries.Close.HasCrossedBelow(_ema.Result, 1))
                ExecuteMarketOrder(TradeType.Sell, Symbol, 1000);
        }

        protected override void OnStop()
        {
            // Put your deinitialization logic here
        }
    }
}

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:25

Hi Tansen,

There is no easy way to do this. You will need to write your data in a file or database and then read it from there.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:22 ( Updated at: 21 Dec 2023, 09:20 )

Hi lec0456,

Here is an example

using System;
using System.Collections.Generic;
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 NewcBot : Robot
    {
        [Parameter(DefaultValue = 0.0)]
        public double Parameter { get; set; }

        protected override void OnStart()
        {
            ChartObjects.DrawHorizontalLine("Test", Symbol.Bid, Colors.Red);
        }

        protected override void OnTick()
        {
        }

        protected override void OnStop()
        {
            // Put your deinitialization logic here
        }
    }
}

and here is what you should see on the chart

Make sure you are using Visual Mode.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Oct 2018, 09:12

Hi Sasha,

Use IsOpened function.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
24 Oct 2018, 12:46

Hi Adam,

cTrader Copy is a pure equity to equity platform. Therefore the invested amount will always be proportional to the amount invested by the strategy provider.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
24 Oct 2018, 10:09

Hi lec0456,

Yes you can and you can use in conjunction with visual backtesting as well.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
24 Oct 2018, 10:06

Hi netread2004,

MsgType(35)=G is not supported at the moment.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
23 Oct 2018, 10:24

Hi deanblackfx,

What is the problem with TradersWay? I am not sure what do you mean with "no banner to connect strategies and copying is the only thing enabled". What banners are you reffering too? What do you mean "copying is the only thing enabled"? What else would you expect to see?

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
23 Oct 2018, 10:11

Hi Adam,

Why do you say so? Proportional equity is a feature of cTrader Copy.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
23 Oct 2018, 10:05

Hi helex93,

Usually you get this error when the volume used in the order is not appropriate. However the information provided is not enough to determine the cause of the issue. Can you provide more information? Is this caused by a cBot? Can you share the cBot and cBot parameters? If we manage to reproduce the problem, then we might be able to provide an explanation.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
22 Oct 2018, 14:33

Here is an example

            var dictionary = new Dictionary<int, int>();
            dictionary.Add(1, 3);
            dictionary.Add(2, 5);
            dictionary.Add(3, 1);
            dictionary.Add(4, 2);
            dictionary.Add(5, 9);
            dictionary.Add(6, 4);
            dictionary.Add(7, 7);
            dictionary.Add(8, 6);
            dictionary.Add(9, 10);
            dictionary.Add(10, 8);

            foreach (var v in dictionary.OrderBy(x => x.Value).Take(5))
            {
                Print("Index: " + v.Key + " Value: " + v.Value);
            }

Best Regards,

Panagiotis


@PanagiotisCharalampous