Replies

PanagiotisCharalampous
03 Nov 2017, 12:46

Dear Cristian,

Thanks for posting in our forum and ponting this issue to us. We will investigate this with our product team and come back to you.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
03 Nov 2017, 09:11

Hi khan_tu,

Thanks for posting in our forum. You can find how to reference a custom indicator in your cBot here. Let me know if this helps you.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
02 Nov 2017, 17:30

Hi doanthedung,

See below

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

namespace cAlgo
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class NewcBot : Robot
    {
        [Parameter(DefaultValue = 0.0)]
        public double Price { get; set; }

        protected override void OnStart()
        {

        }

        protected override void OnTick()
        {
            foreach (var position in Positions)
            {
                if (Symbol.Code == position.SymbolCode && Symbol.Ask < Price)
                {
                    ClosePosition(position);
                }
            }
        }

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

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
02 Nov 2017, 17:27

Hi Mikro,

No there isn't any real benefit besides the convenience of not needing to program yourself all this execution process.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 17:46

Hi davymailu,

Apologies if my explanation was misunderstood but I am aware how it works and it is working exactly as describe it. What I was trying to explain was what would happened if the SL was "set" within the spread. The reason we do not allow SL to be set within the spread is that this would cause immediate closing of the position resulting to an immediate loss. 

My question is how would you expect it to work in this case? We would appreciate your feedback so that we can discuss it internally and improve the way it works. For example, would you like the position to be closed immediately despite the loss? Would you accept a higher SL automatically adjusted outside the spread? Give us any options that could satisfy your needs so that we can discuss it with the product team.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 16:16

Dear anghenly,

Thanks now I can see it. I will send it to our quality assurance team for investigation.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 15:15

Hi anghenly,

No I can't see any screenshot.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 14:51

Hi Mikro,

No there isn't. That is why we are introducing Stop Limit order soon. Stop orders are executed as market orders when triggered. What you can do currently , instead of placing a Stop Order, is to keep track of the trigger price and when reached to place a market order with range. Let me know if this helps you.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 11:21

Hi doanthedung,

See an example below on how to close positions when the Symbol's Ask price has gone below a certain level, set by you. 

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

namespace cAlgo
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class NewcBot : Robot
    {
        [Parameter(DefaultValue = 0.0)]
        public double Price { get; set; }

        protected override void OnStart()
        {
            // Put your initialization logic here
        }

        protected override void OnTick()
        {
            foreach (var position in Positions)
            {
                if (Symbol.Ask < Price)
                {
                    ClosePosition(position);
                }
            }
        }

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

I hope this helps you develop your algorithm further. Let me know if you need anything else.

Best Regards, 

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 11:03

Hi Mikro,

Stop Limit orders are still not supported in cAlgo. They will be out soon.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 10:58

Hi anghenly,

Can you please send us a screenshot of your issue to investigate further?

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 10:37

Hi john123321,

These algos have been developed by the community and not by Spotware. It would be better to contact the developer of the cBot directly.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 10:31

Hi doanthedung,

Thanks for posting in our forum. Can you be more specific on what kind of help do you need?

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 10:15

Hi davymailu,

Thanks for raising this topic. The logic of the implementation is that if the SL is within the spread, then your position should be closed immediately after opening, resulting into a definite loss. Therefore it is rejected. What would be the expected logic from your side in these cases? Maybe our server team can consider changing the logic based on your suggestion.

Best Regards,

Panagiotis

 


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 09:55

Hi Danilo,

IsDaylightSavingTime is just a boolean function that returns true if the time in within a daylight saving time period and false if it is not. But it is not very clear to me how you would like to exploit this information in backtesting. Could you please elaborate a bit more on your question? Is there a specific problem you would like to solve?

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 09:23

Hi nguyenbaocuong,

cTrader does not have the problems mentioned in the article so you can safely benefit from a multicore processor.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 09:14

Hi irmscher9,

The answer is yes, a better processor should speed up backtesting.

Best Regards,

Panagiotis 


@PanagiotisCharalampous

PanagiotisCharalampous
01 Nov 2017, 09:09

Hi seluh1,

Currently this feature is not available in cTrader. You can add a suggestion in the Suggestions section so that the product team can consider it for future releases.

Best Regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
25 Oct 2017, 14:47

Hi BeardPower,

We cannot give an ETA because this feature will be shipped alongside with many others, as a part of a major upcoming upgrade of cTrader. There are many dependencies and underlying complexity, due to the scale of the release, that does not allow us to give an expected date. However we are pushing hard to release it within this year. I hope that my reply answers your question at least partially!

Best Regards,

Panagiotis 


@PanagiotisCharalampous

PanagiotisCharalampous
25 Oct 2017, 14:29

Dear Adriano,

Thanks for posting in our forum. Lot size is dependent on the broker and his liquidity provider. cTrader just passes the orders from the trader to the LP. So there is nothing special in this. If you can trade a microlot on cTrader it means the LP accepts the order.

Can anybody give a step by step overview of how a position is open and closed through a broker that operates with a ctrader platform?

Regarding this, it is not clear to me what is the kind of answer you would like to get. In general, the broker and his cTrader platform are just intermediaries between you and the liquidity provider. Your orders are passed from you to the LP through cTrader and the execution results are streamed back to you.

Let me know if this covers your question of if you meant something else

Best Regards,

Panagiotis 


@PanagiotisCharalampous