原始想法 - 页 13

 
 

基于斐波那契的新系统

这是我在MT3中发现的一个系统,并将其转换为MT4。

看起来它可能有一些前景。但目前我看到它有一个缺陷。

线条不会重新洗牌,所以你需要每天删除指标然后重新安装。

我相信该指标只需要安装一个删除对象代码,但我没有时间,也许在本月晚些时候。正如我所说的,如果你 它从图表中删除,然后重新安装(每个时段的开始),它可以正常工作。

我还应该补充一点,它使用的是Zig-zag指标,所以你也需要在指标目录中找到它。

祝您愉快

附加的文件:
 

趋势系统?

我正在考虑建立一个基于C. Youngs APE指标的自动交易系统。 我想以该指标的一部分为基础,即 "阿尔法 "指标。 简而言之,阿尔法指标与ADX或区间行动验证指数非常相似,见2006年4月的《股票商品杂志》。 这个阿尔法指标比传统的ADX等反应更灵敏。它进入趋势的速度更快,更重要的是它走出趋势的速度更快。

我想设计一个自动交易系统,当阿尔法开始出现趋势时做多,这通常是在阿尔法1.0左右。 我用vttrader进行模拟交易,所以我不能像metatrader那样进行回测,所以我想征求任何关于有利可图的趋势进入方法的建议。 我在考虑当阿尔法出现趋势时使用基本的移动平均线交叉。 然而,我不确定哪种类型的系统对趋势市场是理想的? 我可以使用线性回归 指标、CCI、随机指标、MACD,基本上选择是无限的。 我只是想征求任何建议,看看在强劲的趋势市场中,哪种类型的交易商觉得好。 任何建议都将被汇编成册,并在vttrader上进行日线、4小时、小时、15分钟等主要交叉时段的实盘模拟交易。 我只做了大约6个月的交易,我读了很多书,我只是没有足够的经验来了解这个指标的理想效果。我还发现,一旦这个指标开始出现趋势,在主要趋势之后也会出现高概率的反击交易,所以反转进场/出场方法也是合适的。请赐教,谢谢你,M-Rippy

 

快照I

你好。

我发现了这个指标,它可以让你对你的图表进行抓拍。

这意味着它可以附加到任何你需要图像的图表上。

放在指标和图像的文件夹中的文件夹是:Files

附加的文件:
snapshoti.mq4  2 kb
 

需要对EA进行编码修改

下面的EA是基于抛物线的Sar。它运行得很好,但我在为以下问题而苦恼。该EA是基于30分钟的欧元/美元图表。在快速移动的市场中,该EA将在同一个条形图上打开和关闭2个或多个交易。我希望它在30分钟内只交易一次。一旦一个交易被执行并关闭,它必须在接下来的30分钟内不再交易。非常感谢任何帮助。非常感谢

还有一件事可以真正改善这个EA。当第一个点出现时,它几乎是在条形图的末端(30分钟的末端)进入的。如果可能的话,我希望它能在第一个点出现在柱子上方或下方时立即进入交易。

致以最崇高的敬意

附加的文件:
par5.mq4  9 kb
 

有谁看到过蜡烛或柱状物的范围指示器?

大家好,有人知道有哪种蜡烛或条形图指标可以设置为在该蜡烛或条形图期间达到一定范围时发出警报。例如,在开盘价收盘价 之间有一个零点的十字星,或者在另一个极端,在蜡烛或条形图中有50点的范围,当条形图或蜡烛关闭时,如果设定的数字被击中就会发出警报?谢谢

 

待定订单

你好。

我想让EA每次只下3个SELLLIMIT或BUYLIMIT的订单,保持这些订单3小时。或者是挂单的限制器,我的系统已经放置了不间断的订单,3个是唯一必要的。

感恩

 

模糊专家系统实例

你好

请进入以下页面。

http://merlotti.com/EngHome/Computing/software.htm

你会发现文件、例子和源代码(可修改).....。

良好的探索.....
DV
 

请帮助我 - 订单待定

你好。

我想让EA每次只下3个SELLLIMIT或BUYLIMIT的订单,保持这些订单3小时。或者是挂单的限制器,我的系统已经下了不间断的订单,只需要3个。

感激之情

总计=OrdersTotal()。

如果(OrdersTotal()==0)

{b1=0;b2=0;b3=0;s1=0;s2=0;s3=0;}

如果(OrdersTotal()>0)

{

//打印("订单总数:",OrdersTotal())。

//打印(b1," ",b2," ",b3," ",s1," ",s2," ",s3)。

for(cnt=0;cnt<Total;cnt++)

{

OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES)。

如果(OrderMagicNumber()==2)

{b1=OrderTicket(); }

如果(OrderMagicNumber()==4)

{b2=OrderTicket(); }

如果(OrderMagicNumber()==6)

{b3=OrderTicket(); }

如果(OrderMagicNumber()==1)

{s1=OrderTicket(); }

如果(OrderMagicNumber()==3)

{s2=OrderTicket(); }

如果(OrderMagicNumber()==5)

{s3=OrderTicket(); }

}

}

//买入1

double expirar=(CurTime()+PERIOD_H1*120)。

如果(b1==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (! EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B1, Slippage, STPBUY,BS, "Buy(#" + MagicNumber + ")", MagicNumber,expar, DodgerBlue);

if(Ticket > 0)

{

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("BUY订单打开 : ", OrderOpenPrice()); else Print("错误打开BUY订单:", GetLastError())。

{

b1=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//买入2

如果(b2==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B2, Slippage, STPBUY,BS-0.0001, "Buy(#" + MagicNumber + ")", MagicNumber,expirar, Blue) 。

if(Ticket > 0)

{

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("BUY订单打开 : ", OrderOpenPrice()); else Print("错误打开BUY订单:", GetLastError())。

{

b2=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//买入3

如果(b3==0)

{

if (Order == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_BUYLIMIT, Lots,B3, Slippage, STPBUY,BS-0.0002, "Buy(#" + MagicNumber + ")", MagicNumber,expirar, Aqua) 。

如果(Ticket > 0) {

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("BUY订单打开 : ", OrderOpenPrice()); else Print("错误打开BUY订单:", GetLastError())。

{

b3=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//卖出-1

如果(s1==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (! EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots, S1, Slippage, STSELL, BS, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink) 。

如果(Ticket > 0) {

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("卖出订单 打开 : ", OrderOpenPrice()); else Print("错误打开卖出订单:", GetLastError())。

{

s1=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//卖出2

如果(s2==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (! EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots,S2, Slippage, STSELL, BS+0.0001, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink) 。

如果(Ticket > 0) {

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("卖出订单打开 : ", OrderOpenPrice()); else Print("错误打开卖出订单:", GetLastError())。

{

s2=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

//卖出3

如果(s3==0)

{

if (Order == SIGNAL_SELL && ((EachTickMode && !TickCheck) || (! EachTickMode && (Bars != BarCount))))){

if(!IsTrade) {

//检查自由保证金

如果(AccountFreeMargin() < (1000 * Lots)) {

Print("我们没有钱。Free Margin = ", AccountFreeMargin())。

return(0);

}

if (StopLossMode) StopLossLevel = Bid + StopLoss * Point; else StopLossLevel = 0.0;

if (TakeProfitMode) TakeProfitLevel = Bid - TakeProfit * Point; else TakeProfitLevel = 0.0;

Ticket = OrderSend(Symbol(), OP_SELLLIMIT, Lots, S3, Slippage, STSELL, BS+0.0002, "Sell(#" + MagicNumber + ")", MagicNumber,0, DeepPink) 。

如果(Ticket > 0) {

如果(OrderSelect(Ticket, SELECT_BY_TICKET, MODE_TRADES))Print("卖出订单打开 : ", OrderOpenPrice()); else Print("错误打开卖出订单:", GetLastError())。

{

s3=Ticket;

Print(Ticket);}

如果(EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

}

}

}

}

if (!EachTickMode) BarCount = Bars;

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

如果(OrderType()==OP_BUYLIMIT)

{

OrderDelete(OrderTicket())。

如果(OrderTicket()==b1) {b1=0; return;}

如果(OrderTicket()==b2) {b2=0; return;}

如果(OrderTicket()==b3) {b3=0; return;}

}

OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)。

如果(OrderType()==OP_SELLLIMIT)

{

OrderDelete(OrderTicket())。

如果(OrderTicket()==s1) {s1=0; return;}

如果(OrderTicket()==s2) {s2=0; return;}

如果(OrderTicket()==s3) {s3=0; return;}

}

OrderSelect(b1,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){b1=0;}

OrderSelect(b2,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){b2=0;}

OrderSelect(b3,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){b3=0;}

OrderSelect(s1,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){s1=0;}

OrderSelect(s2,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){s2=0;}

OrderSelect(s3,SELECT_BY_TICKET)。

如果(OrderClosePrice()>0){s3=0;}

}

我的错误在哪里?

 

习俗的例子和演示

嗨,代码大师和程序员

我想感谢你把你的编程课程放在一起。你能不能给一些Icustoms专家的例子以及如何从头开始写。

随便挑一个指标,比如三个。解释一下我如何添加更多的东西,并打开和关闭它们,以便我可以尝试不同的东西。

谢谢你的帮助

盖恩斯博士