thank you for the update but how about the below pending points :
Optimization speed still much lower compared to Ctrader 4.8.30
the progress gauge next to optimizing bots on the left pannel not visible. ( you have to click on each bot to check if it is optimizing and check its status )
equity tab is not combined with the history tab and the statistics tab which prevents us from seeing a the equity chart without the need to scroll up and down
can't see equity progress / trades history live while bot is optimizing
Optimization speed and progress gauge will be part of future updates. The rest are intentional changes will not be reversed for the moment
That great information panel which is available on web and win version.
When this will be available on Mac version. I have to use web version now and that proves to be very processor hungry and slows down the computer. Sometimes even crashes in Chrome.
Hi there,
It will be added in future releases but we do not have an ETA at the moment.
I have developed hundreds of strategies and almost all of them need a fixed timezone regardless where the cBot is running.
So just program in something like the following to get the time based on a fixed time zone and compare whatever actions you need that are time based agains the _Dt datetime variable instead. This has been available since .Net 3.5 I think:
Datetime _Dt = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(Server.TimeInUtc, "Eastern Standard Time"); //or use DateTime.Now in the API call to get the time if more appropriate
Decisions need to be taken at specific times no matter if the code is executed in London, New York or Beijing.
Then if the programmer isn't going to get time based on a specific time zone, they can have it coded in the bot to look at specific times with the C# UTC setting such as getting the time in UTC time and adding an offset. For example:
//if you know the specific time, add it to UTCTimeSpan LocalUTCTimeSpanOffset = new TimeSpan(2, 0, 0);DateTime _Dt = Server.TimeInUtc + LocalUTCTimeSpanOffset;//or if the user knows what time they want things to happen in a specific time zone:Datetime _Dt = TimeZoneInfo.ConvertTimeBySystemTimeZoneId(DateTime.UtcNow, "Eastern Standard Time");//then just compare _localDt to the specific time they need things to happen//or the user specifies the timezone in the directive tag as is currently implemented
Using the above, you have the best of both worlds – implementing the above, users can have their bots make decisions at specific times as they see fit regardless of what timezone cTrader or the server is set to and the code is running in;
when no time zone is provided in the directive and the bots are being run somewhere locally via cTrader, use the timezone the user set in cTrader so those people who travel from Spain (UTC + 2) to London (UTC + 1) to New York (UTC - 4) and back can update their cTrader setting and have the logs and other info with timestamps without having to recompile and redeploy code.
At the moment I don't need to do anything for 99% of cases where cBots/Indicators work in the same country. Your suggestion can be adopted for those rare cases like the ones you mention. If there is enough demand, we will consider it as a built in feature.
You are not alone on this issue. I have it in both Windows and Mac versions.
I have issues with built-in and 3rd parties indicators.
Did you send us troubleshooting?
For Windows version yes, a believe I sent 2 plus annoying you here in the forum. For the Mac I don't think so, I will do it so once I get home later tonight.
Thanks for the follow up
Unfortunately we cannot find the troubleshooting report. Make sure you post the link to the discussion in the text box. Nevertheless, we received similar reports and the issue will be fixed in the upcoming hotfix
It uses your cBot's timezone. If there isn't one set, it's UTC+0
Well, that's annoying. According to the way it's implemented, if I wanted any cBot to log in local time for the time zones I go through because I travel often, I would have to update, recompile, and redeploy the bot every single time I cross a timezone to update the bot instances with the timezone I'm in?
Who decided that?! O.M.G. face palm
cTrader can certainly determine if the cBot is running locally (and not in the cloud), and can also determine if there's a timezone set or not.
If I start a cBot on a VPS that's set for my local time zone running an instance of cTrader bot locally (not in the cloud) set to the current timezone I want to use, then why doesn't the bot, by default if no time zone is specified and it's running locally, use the local time zone?!
It makes more sense to use the timezone the user has selected in cTrader in than a default UTC+0.
This is not something that works out of the box, automatic timezone detection needs to be developed. Feel free to post a suggestion in the Suggestions and we will consider it for future releases.
This really shouldn't have to be a suggestion.
Seriously, who releases software so that when a user changes time zones, the user needs to recompile and redeploy their code to pick up the new time zone?
When a bot is loaded, and before it's started, cTrader should already know if a timezone is specified or not from the bot's header directive.
If there is none specified, Spotware should read the timezone the user sets in cTrader itself.
Otherwise, what's the point of having that?
Again, facepalm
I'll save Spotware's team 10 seconds with this link:
I appreciate your contribution to the community but I cannot tolerate such language. Please respect the forum and consider this as a warning. I have developed hundreds of strategies and almost all of them need a fixed timezone regardless where the cBot is running. Decisions need to be taken at specific times no matter if the code is executed in London, New York or Beijing. Your suggestion is not as brilliant as you think. Adopting your suggestion would be devastating for many strategies. This should be an explicitly requested option in the cBot and not the default setting. However, over the last 13 years, not many people requested this, hence it was never implemented.
cTrader just prompts you to restart whenever it is more convienient for you. Disabling updates completely is not possible due to the nature of our service.
Best Regards,
Panagiotis
hi Panagiotis
I really can't take it with the new Ctrader optimization speed , it is not practical at all and i need to stick to Ctrader 4.x without update until you solve this issue . besides the Ctrader 5.x optimization tabs are really of no use . . I want to stay with Ctrader 4.x interface and performance
Hi Tarek,
You can still use your broker's application that has not been updated yet.
Unfortunately there is no way to do this. Hopefully such changes do not happen often. What you could do would be to monitor the connection i.e. receiving heartbeats from the server. If your application stops receiving heartbeats, it should notify you.
Thank you for reporting this issue. Could you pleasesend us some troubleshooting information when this happens? Please paste a link to this discussion inside the text box before you submit it.
This would need a lot of work since you would need to define your requirements better e.g. what should cross the line if not the price. If you need professional assistance, you can contact a consultant.
WebView is used to display some parts of the UI. Regarding the processes, this is handled by Microsoft's internal logic, therefore we cannot advise regarding the number you see in the task manager.
PanagiotisCharalampous
30 May 2024, 06:21
Hi there,
Spread is only available when you use bar data for backtesting. When you use tick data, the spread information is included in the data.
Best regards,
Panagiotis
@PanagiotisCharalampous