Topics
18 Oct 2014, 20:12
 3758
 3
18 Oct 2014, 11:50
 3988
 9
16 Oct 2014, 03:10
 41
 1375
 5
Replies

Rod_Sands
15 Sep 2015, 05:32

LOL   why not go to 10 decimal places, say an EMA of 20.0000000003.

Decimal places on an EMA would be about as useful as a hip pocket on a singlet.

Brings a new meaning to useless scope creep.

 


@Rod_Sands

Rod_Sands
11 Sep 2015, 11:59

I'd really like to recode my MT4  scripts in cAlgo, a pity that the required functionality is still unavailable.  Without code access to objects (TLines, Rctangles etc) it remains merely unrealized potential.


@Rod_Sands

Rod_Sands
01 Sep 2015, 08:49

test for a minimum sized candle on a higher Time frame eg in your example  and bearish H1 or H2


@Rod_Sands

Rod_Sands
29 Aug 2015, 08:10

RE: RE:

Spotware said:

Rod_Sands said:

WIthout trying to pin you down to an exact date could you give an implementation estimate eg within the next six month?

I'd really like to trade with cAlgol/cTrader (hope that it eventually displaces MT4), however without  being able to manipulate objects it is currently a non starter for myself.

We understand the importance of this functionality. Unfortunately we cannot provide a time estimate for the release.

Is there any update on the implementaion of this functionality?


@Rod_Sands

Rod_Sands
17 Mar 2015, 06:42

Perhaps you can understand the reason why your responds confuses me

https://www.spotware.com/products/broker-automation/cbroker

".. cBroker is Spotware's comprehensive management and administrative tool for brokers and financial institutions.

Markups, symbols, liquidity, ticket sizes, trader accounts, broker management and everything else associated with the Spotware service can be set and adjusted from cBroker....."


@Rod_Sands

Rod_Sands
13 Mar 2015, 06:26

RE: RE:

Rod_Sands said:

Spotware said:

Currently timeout for market range order is 5 sec. You cannot configure it.

We can recommend you to use Limit Order with expiration time.

I suppose that looping thru  ever 5 sec would also be a solution as I would sometime prefer not to have my early SL or TP on the server.

ExecuteMarketOrder(TradeType.Buy, Symbol, 5000, "myRobot", StopLoss, TakeProfit, Slippage, "this is a comment");

 

Question  :  how to accomplish a TP with  Slippage, say 1 pip, the purpose being a cBot initiating a TP (or early exit SL) before the TP or SL is hit on the server.

PS ie how to use such as ClosePosition with slippage?


@Rod_Sands

Rod_Sands
13 Mar 2015, 06:22

RE:

Spotware said:

Currently timeout for market range order is 5 sec. You cannot configure it.

We can recommend you to use Limit Order with expiration time.

I suppose that looping thru  ever 5 sec would also be a solution as I would sometime prefer not to have my early SL or TP on the server.

ExecuteMarketOrder(TradeType.Buy, Symbol, 5000, "myRobot", StopLoss, TakeProfit, Slippage, "this is a comment");

 

Question  :  how to accomplish a TP with  Slippage, say 1 pip, the purpose being a cBot initiating a TP (or early exit SL) before the TP or SL is hit on the server.


@Rod_Sands

Rod_Sands
11 Mar 2015, 08:26

RE:

Spotware said:

Thank you for your suggestion, we will consider it. Additionally, you can post this idea to vote.spotware.com.

Unfortunately I've run out of Votes


@Rod_Sands

Rod_Sands
11 Mar 2015, 08:01

"Sound of Crickets"

Could a Spotware representative respond to my query please.

The information that I have from 'other sources' seems to contradict the above quote. ie My understanding is that Brokers can still pad a Traders cTrader price feed.

 


@Rod_Sands

Rod_Sands
08 Mar 2015, 09:55

http://2calgo.com/


@Rod_Sands

Rod_Sands
08 Mar 2015, 06:24

Most of the Broker's "trading servers" are based in London. Most of the remaining in New York.


@Rod_Sands

Rod_Sands
07 Mar 2015, 16:57

Quote below form the link.

http://www.forexpeacearmy.com/forex-forum/intensive-reviews/16281-intensive-review-ctrader-currency-trading-platform-2.html

"....most regulated brokers are licenced to act as counter parties to your orders, so it's their choice to do so or send the orders to the LPs. However unlike most platforms out there cTrader is a true No Dealing Desk Platform and it forces the broker to fill you using the Prices of the stream of the LP so the execution will be the same in all cases. cTrader does not allow any Price Manipulations, Price Injections, Stop Loss hunting Dealing Desk Rejects or Re - quotes and thus is very different from other platforms that you are used to...."

 

Question - Do cTrader Brokers have the ability to pad the spread?   I'm currently running four concurrent cTrader Brokers and note significant differences between them on high liquidity pairs, even around London Open.  eg Fiber 0 to 1.2

My assumption is that 1.2 cannot be a Liquidity Provider or Accumulator spread, hence the cTrader Broker must be padding the spread.


@Rod_Sands

Rod_Sands
05 Mar 2015, 13:10

RE:

Spotware said:

No, there is no such functionality in cTrader. However you can write a cBot with similar functionality.

A cBot is not a viable solution due to the consequent time delay, requirement to run it on a VPS and the possibility that it will fail, which would leave a position without a stop etc

Hence my suggestion that Spotware CTrader implement the functionality in cTrader, similar to that available in JForex.

.

 

 


@Rod_Sands

Rod_Sands
04 Mar 2015, 05:39 ( Updated at: 21 Dec 2023, 09:20 )

RE:

Rod_Sands said:

Does CTrader support the use of Bid price Buy entries and exits?

eg on a Pending Limit Buy, instead of being triggered at the Ask it is triggered at the Bid (although the actual entry would be at the Ask.  

This functionality is provided by JForex  https://www.dukascopy.com/fxcomm/fx-article-contest/?How-To-Avoid-Being-Stopped=&action=read&id=937&language=en

 

Short and Long examples pasted from the above link

● Short position

Using the previous EUR/CHF example, imagine that you wanted
to open a short position if the price dropped below 1.20000, so you had
placed a sell stop order at 1.19999. If your broker offered only the
normal stop orders which are triggered by the bid price, your order would have
been filled at 1.19954 because the bid price did get below 1.19999.
However, that was not a normal market price, so your trade is now showing a
significant loss when things got back to normal.

To avoid this situation using Dukascopy's platform, you would add the normal market spread (let's say 2 pips just to keep things simple, it is lower than that during the London and NY sessions) to the bid price you want (1.19999), and place a sell "ASK ≤ Stop" order of that sum: 1.20019.



                                                              Opening a short position

So only if the ask price dropped
to or below 1.20019 the order would have been triggered. This didn't
happen because the ask price rose to 1.20275 during the volatile period,
so you were no way near of having your order filled.

If the prices later
dropped to 1.19999/1.20019 then your order would have been
filled at 1.19999, short positions are always filled at the bid, irregardless
of the order type you use.

● Long position

To open a long position (when the price reaches 1.20200, for example) the process is even simpler, because you don't need to include the spread. Simply place a buy "BID ≥ Stop" order of 1.20200 and your order would be filled at around 1.20220.



                                                              Opening a long position

As you can see it also would not have
been triggered during the high volatility period. Note that long positions are
always filled at the ask, irregardless of the order type you use.

 

► How to correctly place
stop-loss orders



You are long EUR/CHF and want to close the position if the
price drops below 1.20000, so you placed a normal stop-loss order at 1.19999.
The market goes wild for a few seconds, the bid price reaches 1.19954
and you are stopped-out. Again, using the proper order type would have avoided
this situation. To correctly place a stop-loss on a long position, you need to
do exactly the same as if you wanted to open a new short position. Add the
normal market spread  to the bid price
you want (1.19999), and place a sell "ASK ≤ Stop" order of that sum: 1.20019. You would not have been
stopped-out.



If you are short and want to close your position
if the prices gets to 1.20200 simply enter a buy "BID ≥ Stop" order of 1.20200,
it would be filled close to 1.20220. This order would not have been
triggered either.


@Rod_Sands

Rod_Sands
08 Feb 2015, 15:12

RE:

Kaworu said:

Hi Guys

I'd like to ask a few questions before i start this little project, is there a way for me to track down or open orders when it's news time in EUR? Or a function in calgo that checks if there are news going on for the pair?

Suspect that the best (read only) solution  to read XML data from something like Forexfactory, which is what I use with MT4.   Never tried implementing in cAlgo and suspect conversion would be difficult.


@Rod_Sands

Rod_Sands
08 Feb 2015, 09:16

RE: RE:

Seems that Objects are still not accessible  

 

"....Currently it is not possible to access trend lines or other chart objects from cAlgo API. We plan to include such functionality in the future"

cAlgo is a lame duck without this functionality

 

 

hiba7rain said:

Thanks for any new updates but i just have a question, is the chart objects on both indicators and robots will have a readable value?

for example as trader if i draw a line that i see as a resistance or support line or a trend line it would be help full for me if i am able to use it to send me email notifications or even to trade the line (object) once the price hit the line, currently yes it is possible for placing the orders on same horizontal lines that we may draw but it is not possible for trend lines that we draw on charts hope you consider such function and make it available even without the need for us to create indicators or robots to use the new functions

thanks

cAlgo_Development said:

Three new methods will be introduced in ChartObjects object next release:

1. Generic line:

ChartObjects.DrawLine(objectName, date1, y1, date2, y2, color, [optional] thickness, [optional] style))
ChartObjects.DrawLine(objectName, index1, y1, index2, y2, color, [optional] thickness, [optional] style)

 

2. Horizontal line:

ChartObjects.DrawHorizontalLine(objectName, y, color, [optional] thickness, [optional] style)

 

3. Vertical line:

ChartObjects.DrawVerticalLine(objectName, date, color, [optional] thickness, [optional] style)
ChartObjects.DrawVerticalLine(objectName, index, color, [optional] thickness, [optional] style)


The logic of adding, updating and removing chart objects is the same as we already have in DrawText  method: objectName identifiers unique created object, if you draw second object with the same name, old one is removed (updated). So if you want to have e.g. several lines at the same time you have to use different object names.


All methods are available in both robots and indicators.


Here we will post several examples of usage.

 

 


@Rod_Sands

Rod_Sands
08 Feb 2015, 08:51

Is there (planned) a method DrawRectangle, DrawTriangle  etc?


@Rod_Sands

Rod_Sands
08 Feb 2015, 07:58

RE:

Spotware said:

Thank you for your suggestion. We have this feature in our road map.

the lack of this functionality is a deal breaker for mysef.. Require the equivalents of ObjectGet and ObjectSet.


@Rod_Sands

Rod_Sands
08 Feb 2015, 07:55

I decided that I will not pursue coding within cAlgo until Object Manipulation functionality is implemented. I suspect that many others feel the same way.

Have equivalents to the following MT4 metods been implement, if not,  what is the eta.

ObjectCreate

ObjectGetValue

ObjectGet

ObjectGetTimeByValue

ObjectGetValueByTime

ObjectGetShiftByValue

ObjectGetValueByShift

ObjectSet

ObjectSetInteger

ObjectSetInteger

ObjectSetDouble

ObjectSetText

etc

 

ObjectSetColor

 

 


@Rod_Sands

Rod_Sands
07 Feb 2015, 17:16

is it yet possible to select chart oject and change their properties via code?


@Rod_Sands