今天受网友“理凤”委托,使用26日MA上穿、下穿60日均线的多时框判断,这个很简单,增加到kitgain_全部信号指标中,看看效果如何。
在编程中,为了修改多行文字,费了好多神。后来想到一个办法,代码如下:
int 行=0;
ObjectCreate("理凤均线", OBJ_LABEL, 0, 0, 0);
ObjectSetText("理凤均线"," 理凤均线系统 ",9, "Verdana", White);
ObjectSet("理凤均线", OBJPROP_CORNER, 放在右上角);
ObjectSet("理凤均线", OBJPROP_XDISTANCE, 左右位置+2);
ObjectSet("理凤均线", OBJPROP_YDISTANCE, 上下位置+行*15);
行=1;
ObjectCreate("line19", OBJ_LABEL, 0, 0, 0);
ObjectSetText("line19","----------------------",8, "Verdana", Orange);
ObjectSet("line19", OBJPROP_CORNER, 放在右上角);
ObjectSet("line19", OBJPROP_XDISTANCE, 2+左右位置);
ObjectSet("line19", OBJPROP_YDISTANCE, 上下位置+行*15);
行=2;
ObjectCreate("均线26", OBJ_LABEL, 0, 0, 0);
ObjectSetText("均线26", "均线"+DoubleToStr(快周期,0)+"=", 9, "Verdana", 顶部信息颜色);
ObjectSet("均线26", OBJPROP_CORNER, 放在右上角);
ObjectSet("均线26", OBJPROP_XDISTANCE, 59+左右位置);
ObjectSet("均线26", OBJPROP_YDISTANCE, 上下位置+行*15);
ObjectCreate("均线26 Value", OBJ_LABEL, 0, 0, 0);
ObjectSetText("均线26 Value",DoubleToStr(iMA(NULL,0,快周期,0,MODE_EMA,MAPrice,0),Digits), 9, "Verdana Bold", Gray);
ObjectSet("均线26 Value", OBJPROP_CORNER, 放在右上角);
ObjectSet("均线26 Value", OBJPROP_XDISTANCE, 2+左右位置);
ObjectSet("均线26 Value", OBJPROP_YDISTANCE, 上下位置+行*15);
行=3;
...
这样使用“行=1,2,3,...,方便了很多。
另外今天在实践中发现,如果在图中做箭头(DRAW_ARROW),赋值语句一般如下所示:
if(MA1[i]>MA2[i] && MA1[i+1]<MA2[i+1])up[i]=Low[i] - 10 * MarketInfo(Symbol(),MODE_POINT); if(MA1[i]<MA2[i] && MA1[i+1]>MA2[i+1])down[i]=High[i] + 10 * MarketInfo(Symbol(),MODE_POINT);
意思是条件满足后,十点开外放箭头。

发表评论