追踪资金功能(股票)--有人遇到过现成的吗? - 页 9

 
使用全局变量 作为一个选项
 

这就是我在我的一个EA中实现获利的方法。

外加双倍ProfitAutoClose = 100.0; // 获利的增量

双倍的存款。

int init()
{
//----
Depo=AccountEquity();
GlobalVariableSet("Depo," Depo);
//----
return(0);
}

int start()
{

Depo=GlobalVariableGet("Depo")。

如果(AccountEquity()-Depo>ProfitAutoClose)
{

ClosePositions("0",-1, Mn);//关闭所有位置

Depo=AccountEquity()。

GlobalVariableSet("Depo",Depo)。

}

...

 
Rita >> :

这正是困难所在。你如何确定上一步的股权?

你必须依靠以前的一些股权价值。我们从哪里得到它--以前的价值?

获得一个变量。

 

谢谢大家。是的,确实如此。

我已经在获利了结(来自 khorosh),这个选项效果很好。而在优化了ProfitAutoClose参数后,缩减量大大减少了!


然而,这并不完全是股权修剪。

如何在这里添加尾随权益? 我是否会引入另一个变量?

 
看看伊戈尔-金的新顾问 中的追踪股权。
 

谢谢你,granit77!

但这只是我最初实验的版本。它不适合,因为在那里,拖网被推离天平,与天平相互作用。被拖累的是利润。

在我的EA中,权益总是低于余额,这种构建不适合。

我之前提到过(第七页的最后一个帖子)。

"如果我的EA总是显示负利润,我怎么能拖累股权?
也就是说,没有利润,但我有一个当前的损失(这是具体的EA操作,每个单独的位置关闭(大部分)在加,但所有未结头寸 都在总的损失)。

 
Rita >> :

而在我的EA中--权益总是长期低于平衡,这种结构不适合。

先关闭无利可图的交易,再关闭有利可图的交易。 余额将下降到股权以下(相当于股权高于余额)。

// 它不会以任何方式影响盈利能力。

否则,我想你往往会对 "股权<平衡 "这一事实感到紧张。 事实上,如此沮丧,以至于你的速度放慢了不少。;)

基本上,你可以把源代码发给我(如果你不想公开的话),我会为你纠正。

 

丽塔,这里有一个代码(作为一个例子),曾经自己做过,没有使用,但现在想起来很有效:)

不与资产负债表、资产负债表利润和其他不必要的东西相联系

(使用前彻底检查,根据自己的需要修改)

如果 (!GlobalVariableCheck("StopTrading")) {如果 (!GlobalVariableCheck("TrStopEquity")) { int sl=SL_Equity; int tp=TP_Equity; if (( sl!=0 && AccountEquity()<=sl) || (tp!=0 && AccountEquity()>=tp)){ GlobalVariableSet("StopTrading",1); Sleep(500); ClosePositions(); if ( ShowComment){ comm="交易完成。所有交易都已结束。\n"; comm=comm+"Expert Advisors停止在"+TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS) 评论( pref, comm)}} }如果 (!GlobalVariableCheck("StopTrading")) {bool tr_stop=TrStop_Equity; int tr_step=TrStep_Equity; int tr_dist=TrDist_Equity; int tr_lvl=TrStartLvl_Equity;if (( tr_stop)||( tr_lvl!=0 && AccountEquity()>=tr_lvl)||(GlobalVariableCheck("trStopEquity")) { if (!GlobalVariableCheck("TrStopEquity")){ GlobalVariableSet("TrStopEquity",1);} Sleep(500); if (!GlobalVariableCheck("SL_Equity")){ GlobalVariableSet("SL_Equity",(AccountEquity()-tr_dist));} Sleep(500); sl=GlobalVariableGet"SL_Equity" 如果 (AccountEquity()<=sl){ GlobalVariableSet("StopTrading",1); Sleep(500); GlobalVariableDel("TrStopEquity") Sleep(500); GlobalVariableDel"SL_Equity" Sleep(500); ClosePositions(); 如果 ( ShowComment){ comm="交易完成。所有交易都已结束。\n"; comm=comm+"Expert Advisors停止在"+TimeToStr(TimeCurrent(),TIME_DATE|TIME_SECONDS) Comment( pref, comm);}} else{如果 (AccountEquity()>( sl+tr_dist+tr_step)GlobalVariableSet("SL_Equity",(AccountEquity()-tr_dist);睡眠(500)如果  ShowComment { comm="追踪止损正在运行。\n"; comm=comm+"水平止损。"+DoubleToStr(NormalizeDouble( sl,2),2)+"\n" comm=comm+TimeToStr(TimeCurrent(), TIME_DATE|TIME_SECONDS);评论( pref, comm) }}
所用的功能是Kim的,如果你还没有,可以在论坛上找到它们。
 

如果你有一个股本的拖网,请给我们发送一个简单的--如果股本=ХХХ,关闭所有头寸并删除所有订单,即例如,在开仓前,余额为10000,在拖网中设置股本为10500,一旦股本=10500,立即关闭所有订单并开仓)。

我看了Kim的......我觉得这一切看起来有点复杂......)在这个主题上面......)提前感谢:)

 

啊,就是这个,我想我就在上面找到了......stCloseOrders似乎是正确的:)

但如果有人有类似的东西,那就把它扔进来吧......它永远不会太有用。)

原因: