[警告关闭!]任何新手问题,为了不给论坛添乱。专业人士,不要走过。没有你,哪里都不能去。 - 页 75 1...686970717273747576777879808182...1145 新评论 [删除] 2009.04.20 05:48 #741 你能告诉我应该写哪些代码,以便当交易关闭时,下一个交易只能在下一个交易栏打开? Nosferatu 2009.04.20 06:09 #742 请告诉我,如何使价格图上的蜡烛图在Awesome Oscillator 和Acceleration/Deceleration Oscillator为绿色时染成绿色,在Awesome Oscillator和Acceleration/Deceleration Oscillator为红色时染成红色,而当指标为不同颜色时,蜡烛图应该是灰色? Евгений 2009.04.20 08:21 #743 gmMarat писал(а)>> 你能告诉我应该写哪段代码来关闭一个交易,以便下一个交易只能在下一个交易栏打开吗? 因此,问题是:你如何完成交易?它是一个停止(这更复杂),还是我们自己关闭它?如果我们自己关闭它,那就容易多了。 Евгений 2009.04.20 08:22 #744 Nosferatu писал(а)>> 请告诉我如何使价格图上的蜡烛图在真棒振荡器 和加速/减速振荡器为绿色时染成绿色,在真棒振荡器和加速/减速振荡器为红色时染成红色,而当指标为不同颜色时,使蜡烛图为灰色? 我从来没有画过烛台,但我肯定在底座上看到过这种火鸡。真的,大约四个月前。查一查吧。 [删除] 2009.04.20 08:27 #745 infinum13 >> : 因此,问题是:你如何完成交易?它是一个停止(这更复杂),还是我们自己关闭它?如果我们自己关闭它,那就容易多了。 交易在获利或止损时关闭! Luka 2009.04.20 14:56 #746 问题。 我有一个指标,为工具写了一个报价,像这样--2321.50000000 怎样才能消除多余的零? Alexey 2009.04.20 16:11 #747 关于写作专家在这里非常好。http://www.vedikhin.ru/2006/06/expert-advisors-overview.html 愿外汇之神原谅我,这是用Wordov的格式。 附加的文件: agpxklvmtqhkmwempmql.rar 175 kb Alexey 2009.04.20 16:17 #748 也帮助我。 编译器的局限性。我想知道对数组的限制(有多少个数组或元素总数或其他类似分配的内存),以及在超级全局变量意义上的全局变量 的数量。 [删除] 2009.04.20 17:23 #749 大家好。 我决定写一个专家。为它拿了一个Stoch。我认为它应该只有一个订单,但它会在80以上卖出,在50以下收盘。我还添加了StopLoss,以减少损失。我已经测试过了。专家似乎在工作,但有时会接二连三地采取StopLosses。因此,我决定在第一次亏损 后改变交易条件,使其与最初的交易条件有明显不同。为此,我引入了我从Kima那里得到的isCloseLastPosByStop函数,并喜欢它。 如果Loss 起作用了,它就会发出信号并写在日志中;在信号 if(SSL==true)后,我设置新的出售条件。我已经编写了它,编译了它,启动了它--它可以工作,但也需要在某些地方连续使用几个 LossO才能使它停止。由于我对MQL4 的经验不多,我不知道哪里出了问题。请以任何方式帮助我.....,我们不是本地人......,也许有人会告诉我如何以其他方式实现这个想法。提前感谢,这是个好地方,我从来没有在没有合格建议的情况下走过.... #财产版权"Alex" #属性链接 "http://www.сайта.net" //---- 输入参数 外部int int MagicNamber=88881。 外置 int K_per=30; 外置 int D_per=8; 外来的int Slow=10。 外来的双倍Lots=1.0。 外置双倍止损=300。 外来的双倍SSL=0。 //+------------------------------------------------------------------+ int start() { 䵮䵮 cnt=0。 票。 总计。 双 StochK_0, // K线值 StochD_1, // D线的数值 SL=StopLoss。 isCloseLastPosByStop()。 如果(Bars<100) { Print("小于100的条形图")。 return(0); } StochK_0=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 0); // K StochD_1=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 2); /D total=OrdersTotal()。 如果(total<1) 如果((StochK_0>StochD_1)&&StochD_1>80) //销售条件 { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green); 如果(ticket>0) { 如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("卖出订单开仓:",OrderOpenPrice()) } else Print("错误打开卖出订单:",GetLastError())。 return(0); } for(cnt=0;cnt<total;cnt++) { RefreshRates()。 OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。 if(OrderType()<=OP_SELL && //这是一个未平仓的头寸?OP_BUY或OP_SELL OrderSymbol()==Symbol()) //工具匹配? { 如果(OrderType()==OP_SELL)//仓位已打开 SSL=isCloseLastPosByStop(); if(SSL==true) { Print("StopLoss"); } total=OrdersTotal()。 如果(total<1) 如果((StochK_0<StochD_1)&&StochK_0 < 50) // 如果StopLoss被触发的销售条件 { ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green); 如果(ticket>0) { 如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("卖出订单开仓:",OrderOpenPrice()) } else Print("错误打开卖出订单:",GetLastError())。 return(0); } for(cnt=0;cnt<total;cnt++) { RefreshRates()。 OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。 if(OrderType()<=OP_SELL && //这是一个未平仓的头寸?OP_BUY或OP_SELL OrderSymbol()==Symbol()) //工具匹配? { 如果(OrderType()==OP_SELL)//仓位已打开 { 如果(StochK_0>StochD_1 &&StochD_1 < 50) // 关闭条件 { OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // 关闭位置 return(0); // 退出 }}}}}}} //___用户fu-ya bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) { datetime t; 双重OCP,OSL。 int dg, i, j=-1, k=OrdersHistoryTotal()。 如果(sy=="0")sy=符号()。 for (i=0; i<k; i++) { 如果(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)){ 如果(OrderSymbol()==sy || sy=="){ 如果(OrderType()==OP_BUY || OrderType()==OP_SELL) { 如果(op<0 || OrderType()==op){ 如果(mn<0 || OrderMagicNumber()==mn) { 如果(t<OrderCloseTime()){ t=OrderCloseTime()。 j=i。 }}}}}}} 如果(OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)){ dg=MarketInfo(sy, MODE_DIGITS)。 如果(dg=0)如果(StringFind(OrderSymbol(), "JPY")<0) dg=4; 否则dg=2。 ocp=NormalizeDouble(OrderClosePrice(), dg)。 osl=NormalizeDouble(OrderStopLoss(), dg)。 如果(ocp==osl)返回(True)。 } return(False)。 } [WARNING CLOSED!] Any newbie KimIV的有用功能 請高手指教!!!關於修改程序!!! 請高手幫幫忙,急需中.... Alexander 2009.04.20 17:42 #750 luka писал(а)>> 问题。 我有一个指标,为工具写了一个报价,像这样--2321.50000000 如何去掉多余的零? DoubleToStr()操作符将帮助你。 1...686970717273747576777879808182...1145 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
你能告诉我应该写哪段代码来关闭一个交易,以便下一个交易只能在下一个交易栏打开吗?
因此,问题是:你如何完成交易?它是一个停止(这更复杂),还是我们自己关闭它?如果我们自己关闭它,那就容易多了。
请告诉我如何使价格图上的蜡烛图在真棒振荡器 和加速/减速振荡器为绿色时染成绿色,在真棒振荡器和加速/减速振荡器为红色时染成红色,而当指标为不同颜色时,使蜡烛图为灰色?
我从来没有画过烛台,但我肯定在底座上看到过这种火鸡。真的,大约四个月前。查一查吧。
因此,问题是:你如何完成交易?它是一个停止(这更复杂),还是我们自己关闭它?如果我们自己关闭它,那就容易多了。
交易在获利或止损时关闭!
问题。
我有一个指标,为工具写了一个报价,像这样--2321.50000000
怎样才能消除多余的零?
关于写作专家在这里非常好。http://www.vedikhin.ru/2006/06/expert-advisors-overview.html
愿外汇之神原谅我,这是用Wordov的格式。
也帮助我。
编译器的局限性。我想知道对数组的限制(有多少个数组或元素总数或其他类似分配的内存),以及在超级全局变量意义上的全局变量 的数量。
大家好。
我决定写一个专家。为它拿了一个Stoch。我认为它应该只有一个订单,但它会在80以上卖出,在50以下收盘。我还添加了StopLoss,以减少损失。我已经测试过了。专家似乎在工作,但有时会接二连三地采取StopLosses。因此,我决定在第一次亏损 后改变交易条件,使其与最初的交易条件有明显不同。为此,我引入了我从Kima那里得到的isCloseLastPosByStop函数,并喜欢它。 如果Loss 起作用了,它就会发出信号并写在日志中;在信号 if(SSL==true)后,我设置新的出售条件。我已经编写了它,编译了它,启动了它--它可以工作,但也需要在某些地方连续使用几个 LossO才能使它停止。由于我对MQL4 的经验不多,我不知道哪里出了问题。请以任何方式帮助我.....,我们不是本地人......,也许有人会告诉我如何以其他方式实现这个想法。提前感谢,这是个好地方,我从来没有在没有合格建议的情况下走过....
#财产版权"Alex"
#属性链接 "http://www.сайта.net"//---- 输入参数
外部int int MagicNamber=88881。
外置 int K_per=30;
外置 int D_per=8;
外来的int Slow=10。
外来的双倍Lots=1.0。
外置双倍止损=300。
外来的双倍SSL=0。
//+------------------------------------------------------------------+
int start(){
䵮䵮
cnt=0。
票。
总计。
双
StochK_0, // K线值
StochD_1, // D线的数值
SL=StopLoss。
isCloseLastPosByStop()。
如果(Bars<100)
{
Print("小于100的条形图")。
return(0);
}
StochK_0=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 0); // K
StochD_1=iStochastic(NULL, 0, K_per,D_per,Slow,MODE_SMA,0,MODE_MAIN, 2); /D
total=OrdersTotal()。
如果(total<1)
如果((StochK_0>StochD_1)&&StochD_1>80) //销售条件
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green);
如果(ticket>0)
{
如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Print("卖出订单开仓:",OrderOpenPrice())
}
else Print("错误打开卖出订单:",GetLastError())。
return(0);
}
for(cnt=0;cnt<total;cnt++)
{
RefreshRates()。
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_SELL && //这是一个未平仓的头寸?OP_BUY或OP_SELL
OrderSymbol()==Symbol()) //工具匹配?
{
如果(OrderType()==OP_SELL)//仓位已打开
SSL=isCloseLastPosByStop();
if(SSL==true)
{
Print("StopLoss");
}
total=OrdersTotal()。
如果(total<1)
如果((StochK_0<StochD_1)&&StochK_0 < 50) // 如果StopLoss被触发的销售条件
{
ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Bid+SL*Point,0, "My EXP", MagicNamber,0,Green);
如果(ticket>0)
{
如果(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
Print("卖出订单开仓:",OrderOpenPrice())
}
else Print("错误打开卖出订单:",GetLastError())。
return(0);
}
for(cnt=0;cnt<total;cnt++)
{
RefreshRates()。
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。
if(OrderType()<=OP_SELL && //这是一个未平仓的头寸?OP_BUY或OP_SELL
OrderSymbol()==Symbol()) //工具匹配?
{
如果(OrderType()==OP_SELL)//仓位已打开
{
如果(StochK_0>StochD_1 &&StochD_1 < 50) // 关闭条件
{
OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // 关闭位置
return(0); // 退出
}}}}}}}
//___用户fu-ya
bool isCloseLastPosByStop(string sy="", int op=-1, int mn=-1) {
datetime t;
双重OCP,OSL。
int dg, i, j=-1, k=OrdersHistoryTotal()。
如果(sy=="0")sy=符号()。
for (i=0; i<k; i++) {
如果(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY)){
如果(OrderSymbol()==sy || sy=="){
如果(OrderType()==OP_BUY || OrderType()==OP_SELL) {
如果(op<0 || OrderType()==op){
如果(mn<0 || OrderMagicNumber()==mn) {
如果(t<OrderCloseTime()){
t=OrderCloseTime()。
j=i。
}}}}}}}
如果(OrderSelect(j, SELECT_BY_POS, MODE_HISTORY)){
dg=MarketInfo(sy, MODE_DIGITS)。
如果(dg=0)如果(StringFind(OrderSymbol(), "JPY")<0) dg=4; 否则dg=2。
ocp=NormalizeDouble(OrderClosePrice(), dg)。
osl=NormalizeDouble(OrderStopLoss(), dg)。
如果(ocp==osl)返回(True)。
}
return(False)。
}
问题。
我有一个指标,为工具写了一个报价,像这样--2321.50000000
如何去掉多余的零?
DoubleToStr()操作符将帮助你。