1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 量化交易软件策略:实用自动交易技术

量化交易软件策略:实用自动交易技术

时间:2019-08-04 17:00:48

相关推荐

量化交易软件策略:实用自动交易技术

概述: 本文不讨论众多盈利交易技术,而是集中于若干实用非标准技术的集合,解释它们为何有价值,并展示实战适用性。

部分持仓平仓算法,利用最后一根柱线的走势: 该算法用于当开仓后不确定价格方向时的交易。通过部分平仓,智能地弥补点差带来的亏损,甚至产生盈利。部分平仓有助于获得最大利润,特别是在不了解未来波浪性质的情况下。

理论: 分析波浪和价格趋势,该算法采用了走势回滚的可能性越大的烛条越强的假设。目的是在减少亏损的同时增加盈利。

方程式: 文章提供了一套数学方程式来计算需部分平仓的交易量,并通过不同的系数来实现灵活性。方程中包括了线性和幂函数,并进一步详细计算了特定系数。

代码: 文章给出了实现部分平仓的MQL4/MQL5代码示例,该代码计算了需平仓的手数,并提供了一个用于部分平仓的函数。

总结: 文章提出了一个新颖的交易技术,通过理论和数学模型的解释,展示了其如何实施和适用。这一非标准技术在理论上和实践中都具有实用性。

在代码中,该函数如下所示:

double CalcCloseLots(double orderlots0,double X){double functionvalue;double correctedlots;if ( X < 0.0 ) return 0.0;functionvalue=StartLotsToOnePoint*MathPow(X ,MathLog(EndLotsToOnePoint/StartLotsToOnePoint)/MathLog(PointsForEndLots));correctedlots=GetLotAniError(functionvalue);if ( correctedlots > orderlots0 ) return orderlots0;else return correctedlots;}

调整手数的函数,确保手数仅采用正确的数值,以紫色高亮显示(没必要展示其内部代码)。 该函数本身是在绿色高亮显示的运算符下计算的,但它只是更通用函数的一部分,在此处称为:

void PartialCloseType()// close order partially{bool ord;double ValidLot;MqlTick TickS;SymbolInfoTick(_Symbol,TickS);for ( int i=0; i<OrdersTotal(); i++ ){ord=OrderSelect( i, SELECT_BY_POS, MODE_TRADES );if ( ord && OrderMagicNumber() == MagicF && OrderSymbol() == _Symbol ){if ( OrderType() == OP_BUY ){ValidLot=CalcCloseLots(OrderLots(),(Open[0]-Open[1])/_Point);if ( ValidLot > 0.0 ) ord=OrderClose(OrderTicket(),ValidLot,TickS.bid,MathAbs(SlippageMaxClose),Green);}if ( OrderType() == OP_SELL ){ValidLot=CalcCloseLots(OrderLots(),(Open[1]-Open[0])/_Point);if ( ValidLot > 0.0 ) ord=OrderClose(OrderTicket(),ValidLot,TickS.ask,MathAbs(SlippageMaxClose),Red);} break;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。