PanagiotisCharalampous's avatar
PanagiotisCharalampous
26 follower(s) 0 following 1006 subscription(s)
Replies

PanagiotisCharalampous
30 Jul 2024, 05:50

Hi there,

You cannot retrieve historical deals using FIX API. You need to use Open API instead.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
30 Jul 2024, 05:50

Hi there,

Did you try it yourself? Does it not work? What do yo expect it to do?

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 10:22

Hi there,

This happens because you check the values of the current candle that has not closed yet. Try shifting your checks to index - 1 and index - 2.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 10:20

RE: RE: Indicators and Opening Position

acar.deniz said: 

PanagiotisCharalampous said: 

Hi there,

  1. All indicators should work on Mac. Please provide us some examples so that we can check. If you can also share screenshots demonstrating what you are looking at, it would be helpful.
  2. There isn't. You need to have the sufficient margin in order to open a position. You can try depositing some more funds to your demo account.

Best regards,

Panagiotis

Thank you for response. I can´t almost run any Indicator. You can see the  problems here in Screnshot.

I was not very accurate in my response. cTrader for Mac should run any .Net 6.0 indicators :) . Legacy indicators are not supported, they need to be upgraded to .Net 6.0


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 06:50

Hi there,

Brokers can setup their own market hours.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:49 ( Updated at: 29 Jul 2024, 05:50 )

RE: RE: RE: RE: RE: Buy and Sell

ctid8204413 said: 

Obviously parameters have to be set, but the tactical layout of having a separate (green only) button way down the page - is inept and wrong…. Like imagine a car where to use the accelerator you have to look down and take your eye off the road……

The stops and margins are indentical for long or short so your point is mute….. and even then clicking the bid or ask box or a button right under it….. if you want to be pedantic……  would be much better than this disconnected mess.

25 years ago on FXCM the layout was better…… but hey…..  the new generation is always so arogant to assume that they know best….. and expert at finding excuses and faulty logic to prove their point.

 

 

Hi there,

This has been working like this for the last 13 years, since cTrader was launched. For the last almost 8 years I have been working at Spotware, it's the first time I receive such a complaint. In addition after 67 views, your suggestion has received 0 votes. This is not called arrogance, it's called science and consensus. 

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:33

RE: RE: RE: RE: RE: RE: Cache data not available or corrupted

Dharaksa.pokpong said: 

PanagiotisCharalampous said: 

Dharaksa.pokpong said: 

PanagiotisCharalampous said: 

Dharaksa.pokpong said: 

PanagiotisCharalampous said: 

Hi there,

Which version of cTrader do you use?

Best regards,

Panagiotis

Hi Panagiotis

it's the latest version so 5.0.28

Best,

Dha

Hi Dha,

Thank you. Could you please send us some troubleshooting information the next time this happens? Please paste a link to this discussion inside the text box before you submit it.

Best regards,

Panagiotis
 

Hi Panagiotis,

First of all, thank you for your attention. I have already submitted the form with a link to this forum. However, I saw that there is a link to download a older version of ctrader, thus, I downloaded yet it says this broker has been suspended. Is there any way for me to use the older version for now? 

Best,

Dha

Hi Dha,

No you cannot use an older version of cTrader at the moment.

Best regards,

Panagiotis

Hi Panagiotis,

Any updates from the troubleshooting team ?

Best,

Dha

Hi Dha, 

The issue is under investigation.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:27

RE: RE: Problem BOT does not open operation in backtest

emafondex69 said: 

Check your logs, your problem is with the volume. You need to round your volume before you use it

 

 

PanagiotisCharalampous  thank you so much but also if I've corrected the volume, settin a fixed value (1.2 Lots), it doesn't work, can you correct it for me?

Here are the main charateristics

  • open long and short at 22.00 UTC+2 (Rome)
  • 9 pip stop 
  • 0.5 pip tp
  • 1.2 lots (volume) 

 

 

here there is my new code, I've tryed my best because I don't know how to program sir, thank you early, have a nice working day.

 

 

 

 

 

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

namespace cAlgo.Robots
{
    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
    public class TimeBasedOrder : Robot
    {
        private DateTime targetTime;
        private bool orderPlaced = false;

        [Parameter("Volume (Lots)", DefaultValue = 1.2)]
        public double Volume { get; set; }

        [Parameter("Stop Loss (Pips)", DefaultValue = 9)]
        public int StopLoss { get; set; }

        [Parameter("Take Profit (Pips)", DefaultValue = 0.5)]
        public double TakeProfit { get; set; }

        protected override void OnStart()
        {
            // Set the target time to 22:00 UTC
            targetTime = Server.Time.Date.AddHours(22);
            if (Server.Time > targetTime)
                targetTime = targetTime.AddDays(1);

            Print("Script started. Order will be placed at {0}", targetTime);
        }

        protected override void OnTick()
        {
            if (!orderPlaced && Server.Time >= targetTime)
            {
                PlaceOrder();
                orderPlaced = true;

                // Set the target time to 22:00 UTC the next day
                targetTime = targetTime.AddDays(1);
            }
        }

        private void PlaceOrder()
        {
            var stopLossInPips = StopLoss;
            var takeProfitInPips = TakeProfit;

            var stopLossPrice = Symbol.Ask + stopLossInPips * Symbol.PipSize;
            var takeProfitPrice = Symbol.Ask + takeProfitInPips * Symbol.PipSize;

            var result = ExecuteMarketOrder(TradeType.Buy, SymbolName, Volume, "TimeBasedOrder", stopLossInPips, takeProfitInPips);

            if (result.IsSuccessful)
                Print("Order placed successfully at {0}", Server.Time);
            else
                Print("Order placement failed: {0}", result.Error);
        }
    }
}

 

 

 

 

 

 

 

 

 

this was the photo that you sent to me, now i'll send you the new messages logs…

 

 

 

 

 

 

 

 

The volume is set in units, not in Lots. Use Symbol.QuantityToVolume to do the conversion between lots and volume.


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:23

RE: RE: RE: RE: Creating a form in the plugin failed

tikahcm2 said: 

How can I convert this cbot into a plugin?

thanks!

Hi there,

There is no specific conversion process. You need to write a plug in from scratch with the same functionality.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:22

Hi there,

There is no such option at the moment in cTrader.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
29 Jul 2024, 05:20

Hi there,

  1. All indicators should work on Mac. Please provide us some examples so that we can check. If you can also share screenshots demonstrating what you are looking at, it would be helpful.
  2. There isn't. You need to have the sufficient margin in order to open a position. You can try depositing some more funds to your demo account.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 08:20

Hi there,

Please provide a better description of your problem. Share some screenshots as well so that we can understand what you are referring to.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 08:18

Hi there,

Talk to your prop firm about this.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 07:34

RE: RE: Creating a form in the plugin failed

tikahcm2 said: 

PanagiotisCharalampous said: 

Thanks for replying
Here is my code. (no error reported when compiling)

using System;using System.Drawing;using cAlgo.API;using System.Threading;using System.Windows.Forms;using System.Media;namespace cAlgo.Robots{    [Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.FullAccess)]        public class CountDown : Robot    {        [Parameter("Alert On", DefaultValue = true)]        public bool paramAlertOn { get; set; }        [Parameter("Always On Top", DefaultValue = true)]        public bool paramOnTop { get; set; }                [Parameter("Sound File Path", DefaultValue = "C:\\Users\\theha\\OneDrive\\Documents\\cAlgo\\sound.wav")]        public string SoundFilePath { get; set; }        private Thread _thread;        private frmCandleCountdown _counter;                const string alertFile = @"C:\Users\theha\OneDrive\Documents\cAlgo\sound.wmp3";         protected override void OnStart()        {            Timer.Start(1);            _counter = new frmCandleCountdown(this, paramOnTop);            _thread = new Thread(() =>{ _counter.ShowDialog(); });                                   _thread.SetApartmentState(ApartmentState.STA);            _thread.Start();            }        protected override void OnTimer()        {            int cdMinutes = 14 - Time.Minute % 15;             int cdSeconds = 59 - Time.Second;            _thread = new Thread(() =>{ _counter.UpdateCounter(cdMinutes.ToString("00")+":"+cdSeconds.ToString("00"));});            _thread.SetApartmentState(ApartmentState.STA);            _thread.Start();             if (Time.Second==31 && paramAlertOn)              {                             Notifications.PlaySound(SoundFilePath);            }          }                 protected override void OnStop()        {            _thread = new Thread(() => {_counter.Close();});            _thread.SetApartmentState(ApartmentState.STA);            _thread.Start();        }    }        public partial class frmCandleCountdown : Form    {        private const string resourcePath = @"C:\Users\theha\OneDrive\Documents\cAlgo\";        CountDown caller;        bool alwaysOnTop = true;        public frmCandleCountdown(CountDown _caller, bool _alwaysOnTop)        {            alwaysOnTop = _alwaysOnTop;            caller = _caller;            InitializeComponent();        }        public void UpdateCounter(string _text)        {            lblCounter.Text = _text;        }        private void frmCandleCountdown_FormClosed(object sender, FormClosedEventArgs e)        {            caller.Stop();        }        private void frmCandleCountdown_Load(object sender, EventArgs e)        {            this.Icon = new Icon(resourcePath+"Countdown.ico");            this.TopMost = alwaysOnTop;        }    }        partial class frmCandleCountdown    {                private System.ComponentModel.IContainer components = null;        protected override void Dispose(bool disposing)        {            if (disposing && (components != null))            {                components.Dispose();            }            base.Dispose(disposing);        }        #region Windows Form Designer generated code        private void InitializeComponent()        {            this.lblCounter = new System.Windows.Forms.Label();            this.SuspendLayout();            this.lblCounter.Dock = System.Windows.Forms.DockStyle.Top;             this.lblCounter.Font = new System.Drawing.Font("Bahnschrift SemiBold", 33F, System.Drawing.FontStyle.Regular);            this.lblCounter.Location = new System.Drawing.Point(0, 0);            this.lblCounter.Name = "lblCounter";            this.lblCounter.Size = new System.Drawing.Size(39, 39);            this.lblCounter.TabIndex = 0;            this.lblCounter.Text = "00:00";            this.lblCounter.TextAlign = System.Drawing.ContentAlignment.TopCenter;             this.AutoScaleDimensions = new System.Drawing.SizeF(96F, 96F);             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;             this.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;            this.BackColor = System.Drawing.SystemColors.GrayText;            this.ClientSize = new System.Drawing.Size(39, 39);             this.Controls.Add(this.lblCounter);            this.Font = new System.Drawing.Font("Microsoft Sans Serif", 16.39F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;                         this.Name = "frmCandleCountdown";            this.StartPosition = System.Windows.Forms.FormStartPosition.Manual;              this.Left = Screen.PrimaryScreen.Bounds.Width-139;                 this.Text = "Candle Count Down";            this.TopMost = true;             this.FormClosed += new System.Windows.Forms.FormClosedEventHandler(this.frmCandleCountdown_FormClosed);            this.Load += new System.EventHandler(this.frmCandleCountdown_Load);            this.ResumeLayout(true);        }        #endregion                private System.Windows.Forms.Label lblCounter;            }    }  

Please check why the plugin is not running./.

Hi there,

I just tried this and works fine for me

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 07:19

Hi there, 

No it does not. It will be added in a future release.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 07:18

RE: RE: RE: Buy and Sell

ctid8222180 said: 

setting the system to buy or sell and then always clicking a green button below is kinda dumb and easily leads to buying instead of selling and visa versa. 

since 25 years ago - the protocol was to click on the bid to sell and click on the offer to buy - simple - easy - hard to get confused - and simply have a check box to make it go live. 

 

Hi there,

The form calculates values e.g margin, for which the direction is necessary. The direction is also necessary for the chart on the right. Therefore the direction needs to be known before hand.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 07:11

Hi there,

Please share your cBot code and cBot parameters you are trying to execute so that we can check.

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 07:08

Check your logs, your problem is with the volume. You need to round your volume before you use it


@PanagiotisCharalampous

PanagiotisCharalampous
28 Jul 2024, 06:46

RE: RE: RE: RE: Testnet Server

santhosh.ms said: 

If We do collaborate with ctrader like as CTrader and FTMO

Hi there,

It is still not clear to me what exactly are you looking for. If you are looking to become a client of cTrader, please contact sales@spotware.com

Best regards,

Panagiotis


@PanagiotisCharalampous

PanagiotisCharalampous
26 Jul 2024, 10:54

RE: RE: Cannot to be Signal Provider for Live account

ctid5249946 said: 

PanagiotisCharalampous said: 

Hi there,

Probably your broker does not offer cTrader Copy. Reach out to them for more information.

Best regards,

Panagiotis

Confirmed with the broker owner that they offer cTrader Copy.

Hi there,

You need to use your broker's cTrader application to see your accounts.

Best regards,

Panagiotis


@PanagiotisCharalampous