FxPro Quant

Dear FxPro,

I have been trying to build an MA crossover EA using FxPro Quant and have had some issues.

I would like the strategy to buy (or close a sell trade) when the 5 period ema crosses above the 8 period ema and sell (or close a buy trade) when the 5 period ema crosses below the 8 period ema. This trade should happen only at the close of a price bar (to avoid crossing and uncrossing of the emas); however on the system that I have programmed it opens or closes a trade at seemingly random points.

I have tried to program it; however it opens multiple positions one after the other. (I have if no orders set to True on both the Buy & Sell Side).


Any advice would be greatly appreciated.

Thanks

Sam

Dear Sam,

Please ensure that the Buy and Sell nodes have different Magic Index numbers.
E.g. ‘Buy’ and ‘Close Buy Trade’ should have 1, ‘Sell’ and ‘Close Sell Trade’ should have 2.

Kind regards,
FxPro Team
Trading CFDs involves significant risk of loss.

Dear Supporter,

I Want to program an EA with a function: When a fast MA cross the slow MA in upward direction, AND some other conditions are fulfiled, the EA opens a long position, but only one. No other long positions will be opened (even when all the conditions are fulfiled again), UNTIL the fast MA cross the slow MA in upward direction AGAIN.

So (as I think) I need some kind of “true/false register”, wich turns to false when the first position (in the direction) opened, AND remain false after the first position closed, until the MA’s crosses again. Set condition is the opened position, re-set condition is the MA cross.

I try the true/false variable, but I can’t connect separate set and re-set conditions.

Would You be so kind to tell me a solution fro the problem?

Many theanks, regards

Dear herp,

Usually strategies like this require using variables to store some values between ticks.
However, in this particular case you can avoid it. Your strategy can be implemented with the following rules:

  1. MA Fast [2] < MA Slow [2]
  2. MA Fast [1] >= MA Slow [1]
  3. New bar

In square brackets candle index is shown. 0 - means current candle, 1 - previous candle, etc.
This way your position will be opened only when crossover happened on the first tick of the next candle. And new position will be opened only when Fast MA return below Slow and cross it upward again.

Kind regards,
FxPro Team

1 Like

Hi, sorry for the poor translation but I do not speak English well. I try to be brief. I want to know how to set limits on income and losses, apart from the “Stop Loss” and “Take Profit” established in the modules to buy and sell. That is, reach close operation when certain Pips gain or loss, a kind of Stop Loss and Take Profit hidden. Thank you very much.

Dear Torre777,

You can do this using the ‘Order Data’ node. You need to set Parameter to ‘Profit pips’ and compare it to desired value. It should be as follows:

IF
Order Data (Profit Pips) >= Target Profit in pips
OR
Order Data (Profit Pips) <= Max Loss in pips
THEN
Close Order


Kind regards,
FxPro Team

Thank you very much for the help

Hello guys, please advise with this:

I want strategy to open new trade only above the entry price of last opened short trade. Trades magic should be the same.

Lets say I have opened short trades at 1.050, 1.060, and 1.080. I want new short trade (with same magic) opened only at price above 1.080.

Please advise Iam struggling with this for days.


This is how iam trying to do it - buy trade example

hi! how to make so that after closing the order did not open a new one in the same direction and waited for an opposite signal? and no matter how he is closed to stop or manually

Dear mike111FXX,

You can do this by using the Number Variable node to store values between ticks.

See example on the screenshot below:

Kind regards,
FxPro Team

Dear lexahs,

If you are using the same magic index for Buy and Sell positions, you can save the last open time for Buy and for Sell orders. You will have 3 possible situations:

  1. Buy time > sell time => last position was Buy
  2. Buy time < sell time => last position was Sell
  3. Not one of the above => there was no trade

See example below:


Kind regards,
FxPro Team

Dear FxPro support

Thnak you for the answer ! I have been trying to implement it for days, but it is still not working. Here is the screenshot: Please let me know what is wrong

Dear mike111FXX,

Could you please export your strategy and send it to <[email protected]>? Please add the link to this thread in your email as well.

You can export your strategy from FxPro Quant via Menu -> Export to file.

Kind regards,
FxPro Team

hello I can’t figure out to to make this help me please
I’m trying to make better take profit stop loss system I want to make the ea close the position when profit reach 1 or 2% gain or 3% floating equities loss.
I don’t want to use pips system I want the equities gain loss % by percentage help me out please !

Dear abanobb,

You may use the Account Node, found under the ‘Info’ section. Selecting ‘Profit’ will return Profit and Loss in opened position, while selecting ‘Equity’ will return currency account equity.
This can also be calculated via the single order profit, for which you may use the Order Data Node with parameters set to Profit.

Kind regards,
FxPro team

Hello, I would like to know how to do to make an order not occur if the Spread goes up to a certain amount, for example 4 or 40?

Another question is, how can we do to avoid open operations during certain days of the week, for example from Friday at 20:30 until Monday at 01:30 and every week?

Thank you very much

how can I make martingale system what should I use I want to make grid + martingale system

I know how to make the grid but the martingale that I don’t know help me please

Dear Torre777,

Please use Ask - Bid to see the current spread value. Then, you may transform points to a whole number and compare it to the desired value. This comparison should be added to the AND node as one of the conditions to open a position.


Kind regards,
FxPro Team

Dear Torre777,

This can be done by checking date and time components like Day of Week, Hour and Minutes individually and combining them into one logical expression. See example on screenshot.


Kind regards,
FxPro Team