我如何声明变量,比较它们,然后在函数中使用它们
how do i declare variables, compare them and then use them inside a function
我正在开发一个 EA,它要求我比较前 2 个柱的高点,以较高者为准,将其用作止损值。
对手方交易也一样,我需要比较前两个低点并使用较低的作为止损值。
我正在做的是:-
void onTick()
{
static int ticket=0;
double ab=(//calculation for ab);
double de=(//calculation for de);
if(Low[1]<Low[2])
double sll=Low[1];
if(Low[1]>Low[2])
double sll=Low[2];
if(buy logic comes here)
{
double entryPrice=////////;
double stoploss=sll-xyz;
double takeprofit=entryPrice+((entryPrice-stoploss)*3);
ticket = OrderSend(Symbol(),...entryPrice,stoploss,takeprofit,.....);
}
if(ticket == false)
{
Alert("Order Sending Failed");
}
}
问题是我无法引用 sll 的值并收到一条错误消息 "sll undeclared identifier"
我对编程还很陌生,如果有人能帮助我解决这个问题,我将不胜感激。
我已经添加了大部分代码以便您理解逻辑。
如果你想在其他任何地方使用变量,你必须在 if 语句的范围之外声明它们,所以不要那样做,看看这个
double sll; // declare sll outside the if statements
if(Low[1]<Low[2])
sll=Low[1];
if(Low[1]>Low[2])
sll=Low[2];
if(buy logic comes here)
{
bool res = OrderSend(..........);
}
从您写的内容来看,您可能也在其他地方使用了 res
,然后您需要在 if 语句之外定义,因为范围界定。
我正在开发一个 EA,它要求我比较前 2 个柱的高点,以较高者为准,将其用作止损值。
对手方交易也一样,我需要比较前两个低点并使用较低的作为止损值。
我正在做的是:-
void onTick()
{
static int ticket=0;
double ab=(//calculation for ab);
double de=(//calculation for de);
if(Low[1]<Low[2])
double sll=Low[1];
if(Low[1]>Low[2])
double sll=Low[2];
if(buy logic comes here)
{
double entryPrice=////////;
double stoploss=sll-xyz;
double takeprofit=entryPrice+((entryPrice-stoploss)*3);
ticket = OrderSend(Symbol(),...entryPrice,stoploss,takeprofit,.....);
}
if(ticket == false)
{
Alert("Order Sending Failed");
}
}
问题是我无法引用 sll 的值并收到一条错误消息 "sll undeclared identifier"
我对编程还很陌生,如果有人能帮助我解决这个问题,我将不胜感激。 我已经添加了大部分代码以便您理解逻辑。
如果你想在其他任何地方使用变量,你必须在 if 语句的范围之外声明它们,所以不要那样做,看看这个
double sll; // declare sll outside the if statements
if(Low[1]<Low[2])
sll=Low[1];
if(Low[1]>Low[2])
sll=Low[2];
if(buy logic comes here)
{
bool res = OrderSend(..........);
}
从您写的内容来看,您可能也在其他地方使用了 res
,然后您需要在 if 语句之外定义,因为范围界定。