// Открыть позиции// Открыть позицию Buyif(sparam==prefix+"_openBuy") {
BroadcastEvent(gMagic,edLots,_symbol);
ObjectSetInteger(0,prefix+"_openBuy",OBJPROP_STATE,false);
ChartRedraw();
}
// Открыть позицию Sellif(sparam==prefix+"_openSell") {
BroadcastEvent(gMagic,edLots,_symbol);
ObjectSetInteger(0,prefix+"_openSell",OBJPROP_STATE,false);
ChartRedraw();
}
//===============================================================================================//------------------ Функция посылает сообщение всем открытым графикам -------------------------+//===============================================================================================void BroadcastEvent(long lparam,double dparam,string sparam) {
ushort eventID=9784-CHARTEVENT_CUSTOM;
long currChart=ChartFirst();
int i=0;
while(i<CHARTS_MAX) // у нас наверняка не больше CHARTS_MAX открытых графиков
{
EventChartCustom(currChart,eventID,lparam,dparam,sparam);
currChart=ChartNext(currChart); // на основании предыдущего получим новый график if(currChart==-1) break; // достигли конца списка графиков
i++; // не забудем увеличить счетчик
}
}
好吧,我有一个不同于省钱的目标。
我在图表上有EA,从面板上打开额外的windows副本进行交易是不正确的。这就是为什么我把交易面板写成指标的形式--你可以在一个图表上放很多个指标。
这是一小段摘录,代码有点截断,但逻辑很清楚。
指标
专家顾问
指标在哪里?请把它附在这里,这样你就不必在论坛的主题中徘徊。
是的,我想把我的图表的ChartID 写在终端的全局变量 中,然后所有的指标都知道该把事件发送到哪里。没有BroadcastEvent的现货。
Glob.variable是同一个文件,终端对它的工作强度很大,会杀死磁盘,以静态的方式检查它是没有用的,它是同一个循环,但在配置文件中 :)
指标
指标
如果有的话,取自这里
Glob.variable是同一个文件,终端对它的工作强度很大,会杀死磁盘,以静态的方式检查它是没有用的,它是同一个循环,但在配置文件中 :)
Glob.variable是同一个文件,终端对它的工作很努力,并杀死了磁盘,以静态的方式检查它是不合理的,它是同一个循环,但在配置文件中 :)
如果你强行刷新它,就会出现相同的文件,否则,内存大部分都在工作。
一般来说,EA/指标之间的正常传输器变成了
接收器。
发射器。
处理器上没有负载。
一般来说,EA/指标之间的正常发射器会发挥作用。
不正常的是,每8个字节,你将会累死在传输的东西上。
虽然它可以工作--@fxsaber 做了一个bibloo,似乎TypeToByte用于交换更复杂的结构
ZS:碰撞如何处理?- 我认为,所有的道路都通向数据交换的数据库,90%的工作都是为你完成的,而且非常有质量。