大佬教程收集整理的这篇文章主要介绍了MQL5 买入和 sl tp,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我在购买此策略时遇到了麻烦。问题是,如果我将 sl 和 tp 设置为 0,它将进行购买。但是,如果我将其中一个或两个设置为非零,则不会进行购买。但是,我之前已经在 MQL5 中编写过交易并且这已经奏效,所以我不确定我错过了什么。谁能指出我遗漏了什么?
#include<Trade\Trade.mqh>
CTrade Trade;
bool Cross_Below = false;
bool Cross_Above = false;
bool in_agreement = false;
voID OnTick()
{
double Ask=normalizeDouble(Symbolinfodouble(_Symbol,SymBol_ASK),_Digits);
// get the buying price
double BID=normalizeDouble(Symbolinfodouble(_Symbol,SymBol_BID),_Digits);
double close_current = iClose(_Symbol,PERIOD_CURRENT,1);
String entry = "";
MqlTraderequest request={0};
MqlTradeResult result={0};
request.action = TradE_ACTION_DEAL;
request.symbol = Symbol();
MqlRates PriceInfo[];
ArraySetAsSerIEs(PriceInfo,truE);
copyRates(Symbol(),Period(),1,PriceInfo);
double Latest_Close_Price = PriceInfo[0].close;
//Comment("lastcloseprice",Latest_Close_PricE);
double EMA50ArraY[],EMA100ArraY[],EMA150ArraY[];
int EMA50DeFinition = iMA(_Symbol,_Period,50,MODE_EMA,PRICE_CLOSE);
int EMA100DeFinition = iMA(_Symbol,100,PRICE_CLOSE);
int EMA150DeFinition = iMA(_Symbol,150,PRICE_CLOSE);
ArraySetAsSerIEs(EMA50Array,truE);
ArraySetAsSerIEs(EMA100Array,truE);
ArraySetAsSerIEs(EMA150Array,truE);
copyBuffer(EMA50DeFinition,EMA50Array);
copyBuffer(EMA100DeFinition,EMA100Array);
copyBuffer(EMA150DeFinition,EMA150Array);
double ema_slope50 = (EMA50Array[0]-EMA50ArraY[10])/10;
double ema_slope100 = (EMA100Array[0]-EMA100ArraY[10])/10;
double ema_slope150 = (EMA150Array[0]-EMA150ArraY[10])/10;
if(BID >= EMA50Array[0])
{
entry = "buy";
}
if (entry =="buy")
{
Trade.buy(0.10,NulL,Ask,(BID+150*_Point),(Ask-150*_Point),null);
}
Comment(EMA50Array[0],"\n",BID);
}
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
以上是大佬教程为你收集整理的MQL5 买入和 sl tp全部内容,希望文章能够帮你解决MQL5 买入和 sl tp所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。