Topics
Replies
nk.nguyenkhuong
08 Aug 2022, 16:50
RE: Hello, have a nice day. Please help me fix the bot bug because it doesn't work, thanks
PanagiotisCharalampous said:
Hi,
The green message says that the build was successful.
Best Regards,
Panagiotis
Thanks for your help I have successfully built the source code and I start the bot but the bot is not working, I don't know where I am doing wrong, please help, thanks
@nk.nguyenkhuong
nk.nguyenkhuong
08 Aug 2022, 16:41
RE: I tried to "build" the source code. But unfortunately it didn't work. please help me, thanks
PanagiotisCharalampous said:
Hi,
I don't see any errors just some warnings that are self explanatory.
Best Regards,
Panagiotis
@nk.nguyenkhuong
nk.nguyenkhuong
08 Aug 2022, 16:25
( Updated at: 21 Dec 2023, 09:22 )
RE: Hello, have a nice day. Please help me fix the bot bug because it doesn't work, thanks
PanagiotisCharalampous said:
Hi there,
For some reason spaces are removed.
Can you fix and post again?
Best Regards,
Panagiotis
@nk.nguyenkhuong
nk.nguyenkhuong
08 Aug 2022, 09:05
RE: Source code is not available, Bot can't use the new update Ctrader 4.2.16, please fix it. Thank you
PanagiotisCharalampous said:
Hi there,
Can you please provide us with the cBot source code and exact steps steps to reproduce this behavior?
Best Regards,
Panagiotis
using
System;
using
System.Linq;
using
cAlgo.API;
using
cAlgo.API.Indicators;
using
cAlgo.API.Internals;
using
cAlgo.Indicators;
namespace
cAlgo.Robots
{
[Robot(TimeZone = TimeZones.UTC, AccessRights = AccessRights.None)]
public
class
my_tsl : Robot
{
[Parameter(
"Instance Name"
, DefaultValue =
""
)]
public
string
InstanceName {
get
;
set
; }
[Parameter(
"Include Trailing Stop"
, DefaultValue =
true
)]
public
bool
IncludeTrailingStop {
get
;
set
; }
[Parameter(
"Trailing Stop Trigger (pips)"
, DefaultValue = 2)]
public
double
TrailingStopTrigger {
get
;
set
; }
[Parameter(
"Trailing Stop Step (pips)"
, DefaultValue = 1)]
public
double
TrailingStopStep {
get
;
set
; }
protected
override
void
OnStart()
{
// Put your initialization logic here
}
protected
override
void
OnTick()
{
if
(IncludeTrailingStop)
{
SetTrailingStop();
}
// Put your core logic here
}
private
void
SetTrailingStop()
{
var sellPositions = Positions.FindAll(InstanceName, Symbol, TradeType.Sell);
foreach
(Position position
in
sellPositions)
{
double
distance = position.EntryPrice - Symbol.Ask;
if
(distance < TrailingStopTrigger * Symbol.PipSize)
continue
;
double
newStopLossPrice = Symbol.Ask + TrailingStopStep * Symbol.PipSize;
if
(position.StopLoss ==
null
|| newStopLossPrice < position.StopLoss)
{
ModifyPosition(position, newStopLossPrice, position.TakeProfit);
}
}
var buyPositions = Positions.FindAll(InstanceName, Symbol, TradeType.Buy);
foreach
(Position position
in
buyPositions)
{
double
distance = Symbol.Bid - position.EntryPrice;
if
(distance < TrailingStopTrigger * Symbol.PipSize)
continue
;
double
newStopLossPrice = Symbol.Bid - TrailingStopStep * Symbol.PipSize;
if
(position.StopLoss ==
null
|| newStopLossPrice > position.StopLoss)
{
ModifyPosition(position, newStopLossPrice, position.TakeProfit);
}
}
}
protected
override
void
OnStop()
{
// Put your deinitialization logic here
}
}
}
@nk.nguyenkhuong
nk.nguyenkhuong
08 Aug 2022, 17:13 ( Updated at: 21 Dec 2023, 09:22 )
RE: Hello, have a nice day
For the bot to run but the command is not executed, is the bot not working, while the old version of Ctrader bot can use it normally?
PanagiotisCharalampous said:
@nk.nguyenkhuong