Topics
Replies
.ics
03 May 2016, 18:06
RE:
Spotware said:
Dear Trader,
Please have a look at the GetFitness method of the API Reference.
There is no method to export Optimization parameters according to any user specified preferences. We will consider providing such method in the future. Stay tuned.
Additionally, you can post your ideas/suggestions to http://vote.spotware.com/
Thanks for your reply but the API documentation isn't providing much info.
GetFitness Summary Override this method to provide custom fitness value for Optimization Syntax protected virtual double GetFitness(GetFitnessArgs args) Parameters Name Description
Is there maybe someone else who has experience with the GetFitness method?
Thanks in advance.
@.ics
.ics
24 Apr 2016, 18:45
RE:
Spotware said:
Dear .ics,
We tried to reproduce your issue without success, based on the code you have posted. Could you please provide us with more information regarding your issue?
In addition, could you please tell us if you receive an error message, exception code?
Hi,
I was able to solve the issue with thanks to tmc.
Problem got solved by removing the algo and indicator, and rebuilding them from scratch.
@.ics
.ics
20 Apr 2016, 00:24
RE:
Waxy said:
So the latest update (today) fixed this for me, what about you .ics?
I also did receive the cAlgo update but it's doesn't solve the issue at my side. Currently running spotware calgo 1.35.64939.
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 princess : Robot { public double RenkoPips = 10; public int BricksToShow = 10; private Renko renko; protected override void OnStart() { renko = Indicators.GetIndicator<Renko>(RenkoPips, BricksToShow, 2, "SeaGreen", "Tomato"); } protected override void OnTick() { if (renko.Open.Last(1) < renko.Close.Last(1)) { ExecuteMarketOrder(TradeType.Buy, Symbol, 1000); } } protected override void OnStop() { // Put your deinitialization logic here } } }
@.ics
.ics
19 Apr 2016, 00:26
RE:
Waxy said:
So I'm posting same issue here because it has to do more with the platform than to bots or indicators.
Any of the samble bots I'm able to compile, but any new bot I make thwos this ErrorAssembly.
Does this 'Core' has to do with System.Core dll? or something else?
I took the opportunity to reset my laptop but it didn't fix it, I need to fix this fast any help would be appreciated.Thanks.
Hi,
I'm experiencing the same issue when i try to compile a cbot based on this indicator:
/algos/indicators/show/1086
Any guidance appreciated.
@.ics
.ics
21 Mar 2016, 15:06
( Updated at: 21 Dec 2023, 09:20 )
RE:
mindbreaker said:
Hi, may be someone translate to cAlgo:
//| fxono.mq4 | #property version "1.0" #property strict #define MAGICMA 6666 //--- Inputs input double Lot =1; input int sl = 50; input int tp = 50; //+------------------------------------------------------------------+ //| Check for open order conditions | //+------------------------------------------------------------------+ void CheckForOpen() { double ma; int res; ma= iOpen(NULL,PERIOD_W1,0); if(Open[1]ma && Close[1]>ma) { res=OrderSend(Symbol(),OP_BUY,Lot,Ask,3,ma - sl*Point*10,Ask + tp*Point*10,"",MAGICMA,0,Blue); return; } } void OnTick() { if(Bars<100)return; if(OrdersTotal() == 0)CheckForOpen(); }
mindbreaker, how can i get in contact with you?
@.ics
.ics
17 Mar 2016, 14:18
RE:
gainer said:
Since i answered a couple of topic i saw this is a matter that interest many of us, I opened this subject with all the instructions to FULLY integrate the cAlgo with the Visual Studio 2015 Community Edition
This is the complete procedure
Above all, if you don't have it yet, download and install the powerful but TOTALLY FREE Visual Studio 2015 Community Edition
https://www.visualstudio.com/en-us/products/visual-studio-community-vs.as
Take a seat and a good coffee because the installation is really long!
During the installation, you can choose the full version (with web development, C++, Visual Basic, Python and much much more...) or select only our loved C# environment for a lighter implementation
- Download the extension visual studio package https://visualstudiogallery.msdn.microsoft.com/e3279d0a-8002-4773-b8d3-bd70f57c27f7
The vsix is simply a zipped file, unzip it in a folder as "VSExtension"
Enter in the folder and you'll see the file "extension.vsixmanifest"
Open the file "extension.vsixmanifest" with a normal text editor
Add the references to the visual studio community edition between the eligible products
Community Community Community Community Community
This is the complete code, you can also copy and past it in the extensione.vsixmanifest in place of the current one
cBots and Custom Indicators Spotware 1.4 EULA.txt Building cBots and Custom Indicators in Visual Studio 1033 false Pro Pro Pro Community Community Community Community Community Visual Studio MPF VSExtension.pkgdef
Now from within the directory, zip again all the files in a new "VSExtension.vsix" (be carefull to include all the files, but NOT the directory)
Double click on the new vsix you just created within your directory... and it's done!
Wait for the installatione, then try it: within cAlgo select the "Edit in Visual Studio" option from the left drop down arrow menu near the name of one of your cBots/Indicators and after a while, it will appear within Visual Studio 2015 Community with the fully integration we want
That's all and have a good job!
I'm not sure what the result is what we need to get. When i try to do above steps, i receive the message:
---------------------------
VSIX Installer
---------------------------
This extension is already installed to all applicable products.
---------------------------
OK
---------------------------
Would you mind posting a screenshot of the result expected?
@.ics
.ics
17 Mar 2016, 01:10
RE: RE: RE:
Spotware said:
.ics said:
Spotware said:
Dear .ics,
Could you please perform the steps described in our previous post?
Dear Spotware,
Info sent.
Dear .ics,
As per the message you received, we kindly ask you to check your internet connection. We would like to inform you that there are several reasons that could interfere with the connection between the cTrader platform and the server. (E.g. virus, another program consumes the entire bandwidth, you antivirus blocks some packages). Please have a look at the troubleshooting section of our support site.
Hi Spotware,
Thanks for your reply.
It could be the case that other programs are consuming a lot of bandwidth causing the client to disconnect, but that's in my opinion not the essence of the issue what needs to be addressed.
When a client is disconnected for what ever reason. We or the client should always be able to perform a new login without the dependency of stopping the algo from running first. Currently when the client has lost its connection, you are not able to perform a new logon unless you stop the algo from running, causing dataloss of trading activities.
@.ics
.ics
11 Mar 2016, 14:45
RE:
1013330 said:
I am really mad at spotware.
cTrader platform is on, my server is on, my internet connection is on (I have dedicated server with 1GB dedicated connection and 64 GB RAM)
yet ctrader is disconnecting from the account regularly so the open trades are no longer managed by algo.
Now the issue exist on 3 different brokers, on live accounts on demo accounts and also in ctrader and calgo.
Hi Spotware,
I'm experiencing the same issues.
I'm also losing my datafeed on cAlgo resulting that the algo is not managing my trades anymore. Afterwards as work-around i have to restart cAlgo to fix the datafeed.
Greetings
@.ics
.ics
04 Jan 2016, 22:23
RE:
Spotware said:
Dear Trader,
Thank you for your suggestion. We will consider it. Additionally, you can post your ideas/suggestions to http://vote.spotware.com/
If other traders are interested in this feature, you can add votes through this link:
http://vote.spotware.com/forums/229166-ideas-and-suggestions-for-ctrader-and-calgo/suggestions/11296092-api-help-in-visual-studio
@.ics
.ics
04 Jan 2016, 02:22
RE:
lucian said:
It's EURUSD. The abnormality is present on partial May, whole June, and some August..
Please backtest on TickData with:
protected override void OnBar()
{
if ((Math.Round(Symbol.Spread * 10000, 1)) < 0)
Print(Math.Round(Symbol.Spread * 10000, 1));
}
Does this mean that you can make the same profit but will require less pips when the spread is negative?
And that it than is better to manage positions on a profit base instead of on the amount of pips base, fe. if (profit == $10) {close position} <> if (amount of pips == 10) {close position}?
Thanks in advance.
@.ics
.ics
04 Jan 2016, 01:27
RE: There is a workaround
jhtrader said:
Hi guys,
If anyone wants to know how I managed to successfully back test a multi currency robot you can contact me and I will show you.
Basically the solution involves creating a customSymbol class, loading the data for each tradepair for the backtest period into a database and calling the bid and ask for each tradpair from the database on bar () bypassing the symbol properties inside the robot. Trade execution also needs to be simulated by placing orders inside a database.
If you want I have downloaded the data from the cAlgo data series so I can pass you this. The thing that is not possible is to getSeries during onBar() so indicators cannot function.
CAlgo Team this is workaround is far from optimal but after 3 years and no further updates.. hoping for this function to be available anytime soon does'nt seem to be an option. I hope the team will provide an update on this crucial functionality.
This is indeed a required crucial functionality. I hope this feature is one of the features what can get priority now...
@.ics
.ics
02 Jan 2016, 00:30
( Updated at: 23 Aug 2022, 15:23 )
RE:
DeletedUser said:
Hi .ics,
Following trend_meanreversion's suggestion I downloaded the tick data using a demo ICMarkets account. Unfortunately I still don't know how to use the dukascopy tick data in cAlgo. If Spotware could direct us on how the TDBC files are formatted we could be able to do it. Or even better let us directly load tick data via CSV file. Sorry I can't be of more help.
Following on, some things are still a mystery to me, like when backtesting using tick data, there is no TimeFrame.Tick1, whereas live I can use MarketData.GetSeries(Symbol,this.TimeFrame), with timeframe being set to t1, thus letting me use indicators on tick data. This could just be me being stupid and just how it's meant to be, anyway I'm confused. At least now I can access tick data for backtesting.
Hi Simon,
Thanks for your clarification. It seems that we all are searching and waiting for the same feature in cAlgo. Being able to use more tick data than that now is provided.
Also, Happy New year! :)
@.ics
.ics
31 Dec 2015, 06:04
( Updated at: 23 Aug 2022, 15:24 )
RE: RE:
DeletedUser said:
Hi Paul,
Thanks for the response, I currently have 1m bars from a csv file working with backtesting, and some tick data is working for certain symbols (EURUSD etc), however for the symbol I need most (Germany30), my broker is sending me empty data files (C:\Users\username\AppData\Roaming\FxPro-cAlgo\BacktestingCache\Ticks\#Germany30) are all empty 1KB files, as opposed to 1MB+ files for EURUSD data files
While testing 1 minute and greater algorithms is fine, it's annoying as my robot is designed to handle orders down to the tick
And there's no chance for me to develop per tick based algorithms by backtesting, only via watching the market live
It's should be an easy problem to resolve, but my broker doesn't seem to understand the issue yet, so I was hoping Spotware might be able to resolve the issue
Hi Simon,
If you mention that some tick data is working for certain symbols, do you mean the tick data available from the broker server, or do you mean the tick data from dukascopy?
In case of tick data from dukascopy, could you share us how you are getting this tick data to work in cAlgo? This would make algo development more reliable because more historical data would be available for the algo testing.
Thanks in advance.
@.ics
.ics
22 Dec 2015, 18:24
RE:
Spotware said:
Dear Trader,
Intellisence should work fine in Visual Studio. Could you please send us a video showing your issue at troubleshooting@spotware.com or share a link with us?
Hi Spotware,
Thanks for the fast response!
The intellisence feature is working fine like you mention. What I meant was having access to the API reference.
In cAlgo IDE, at the right side you have the pane which gives access to the API reference information.
For example:
If you look up a method, you get a nice overview of where method information is mentioned into the reference.
In VS, if you want some additional information you can select the method and hit F1.
This will open the Microsoft Help Viewer but will report that "No content was found on your computer.". You will be able to make this info available if you have all necessary file, which in this case i don't have.
I also added an link to a forum post:
https://social.msdn.microsoft.com/Forums/en-US/0253a6ab-a084-4f8c-b77e-d1450b1109e1/how-to-create-a-help-manifest-file-msha-file?forum=devdocs
Thanks in adcance.
@.ics
.ics
21 Jul 2015, 22:37
Thanks for the guidance Spotware, but still getting below error:
03/01/2000 03:00:00.000 | Crashed in OnBar with NullReferenceException: Object reference not set to an instance of an object.
Here is the snippet of code what is causing the error:
protected override void OnBar() { dblLots = 0.1; TradeResult result = PlaceStopOrder(TradeType.Buy, Symbol, Symbol.QuantityToVolume(dblLots), dblPriceBuy, String.Concat("myStopBuy-", dblLots), dblSlBuy, dblPipsTP, Server.Time.AddHours(1)); if (result.IsSuccessful) { ChartObjects.DrawText(String.Concat("myStopBuy-", result.Position.Id), strArrowUp, MarketSeries.OpenTime.GetIndexByTime(result.Position.EntryTime), result.Position.EntryPrice - 5 * Symbol.PipSize, VerticalAlignment.Bottom, HorizontalAlignment.Center); } else { Print("myStopBuy was not successful. Error: {0} - Lots: {1}", result.Error.Value, dblLots); } }
@.ics
.ics
27 Jun 2015, 04:56
RE:
Spotware said:
Dear Trader,
There is a way to set x coordinate to a previous bar using indexes.
The following code snippet is an example of drawing lines using indexes:
[Parameter("Source")] public DataSeries Source { get; set; } protected override void OnStart() { var index = Source.Count; var price = Symbol.Bid + Symbol.PipSize; ChartObjects.DrawLine("line", index - 1000, price, index, price, Colors.Blue, 2, LineStyle.Solid); }
Is this line also drawn during backtesting? Because i tried this snippet for education purpose, but don't notice any result.
Thanks in advance.
@.ics
.ics
08 May 2016, 21:28
RE:
hedgebitcoin said:
Thanks for this valuable contribution hedgebitcoin!
@.ics