检查--我做错了什么? - 页 7

 
Natalya Smirnova #:

请告知如何写得好。因此,为了不重复编码阵列。
专家顾问使用2个指标。
和开单条件现在看起来是这样的。


但我想添加过滤器
使用或不使用1或2个指标
只是我不知道如何更正确地实现它。
它将看起来像这样。

我可以在设置中禁用1个指标或第二个指标。
想不出如何在不复制大量代码的情况下做到这一点,.....


extern bool ind1=true;
extern bool ind2=true;

void OnTick(){

        bool buy1=true;
        bool sell=true;
        if(ind1){
                buy1=...
                sell2=...
        }

        bool buy1=true;
        bool sell=true;
        if(ind2){
                buy2=...
                sell2=...
        }       


        bool buy=buy1&&buy2;
        bool sell=sell1&&sell2;
}

有一个缺点--如果所有的指标都被禁用,信号始终存在。如果这很重要,你可以在现场进行登记,并禁止专家开始工作。但更多时候,有一个指标没有被禁用,所以没有问题。

 
Dmitry Fedoseev #:


有一个缺点--如果所有的指标都被禁用,总是有信号。如果它很重要,你可以在inite中做一个检查并禁用EA。但更多时候,有一个指标没有被禁用,所以没有问题。


它是通过初始化变量buy1, sell1, buy2, sell2来解决的。

extern bool ind1 = true;
extern bool ind2 = true;

void OnTick() {

        bool buy1 = ind1 || ind2;
        bool sell1 = ind1 || ind2;
        if( ind1 ) {
                buy1 = ...
                sell2 = ...
        }

        bool buy2 = ind1 || ind2;
        bool sell2 = ind1 || ind2;
        if( ind2 ) {
                buy2 = ...
                sell2 = ...
        }       


        bool buy = buy1 && buy2;
        bool sell = sell1 && sell2;
}
 

这都是一种雄辩的表现。

首先,你必须有一个成功的交易系统,然后,如果你没有任何事情可做,你可以把它变得漂亮和整洁 ...如果你想...

将会有多少次尝试--几千次、几万次,运气好的话......。

但还远不能确定这将发生。

这就是为什么在开发交易系统的初始阶段,"漂亮的 "大脑负荷是完全没有用的。

而没有任何成功交易的雄辩评论,关于 "像我一样做 "或 "看我如何编程 "的主题,不过是在金融市场上完全没有价值的调情。

;)