论坛全局菜单下方 - TICKMILL 285X70论坛全局菜单下方 - ThinkMarkets285X70论坛全局菜单下方 - 荔枝返现285X70论坛全局菜单下方 -  icmarkets285X70
查看:3869回复:13
macro
注册时间2007-04-08
[原创]在MT4指标栏画资金曲线
楼主发表于:2010-07-24 15:14只看该作者倒序浏览
1楼 电梯直达
电梯直达
MT4本身提供的资金曲线是以交易单数为横坐标的,而大家习惯一日一决,可以用ATR指标改写。balance.gifbalance.gif
TK29帖子1楼右侧xm竖版广告90-240
个性签名

韬客社区www.talkfx.co

广告
TK30+TK31帖子一樓廣告
TK30+TK31帖子一樓廣告
首席行走
注册时间2009-07-15
积极参与奖热心助人奖幸运星双鱼座
发表于:2010-07-25 00:47只看该作者
2楼
这个有点意思,能说详细点吗?
macro
注册时间2007-04-08
楼主发表于:2010-07-25 02:23只看该作者
3楼
登录MT4后打开"工具\MQ语言编辑器,打开ATR指标,将下文替代原来的文本,另存为balance,编译。 然后从自定义指标中寻找balance。 //+------------------------------------------------------------------+ //| ATR.mq4 | //| Copyright ?2005, MetaQuotes Software Corp. | //| http://www.metaquotes.net/ | //+------------------------------------------------------------------+ #property copyright "Copyright ?2005, MetaQuotes Software Corp." #property link "http://www.metaquotes.net/" #property indicator_separate_window #property indicator_buffers 1 #property indicator_color1 DodgerBlue //---- input parameters extern int AtrPeriod=14; //---- buffers double Balance; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { string short_name; //---- 1 additional buffer used for counting. IndicatorBuffers(1); //---- indicator line SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,Balance); //---- name for DataWindow and indicator subwindow label short_name="Balance"; IndicatorShortName(short_name); SetIndexLabel(0,short_name); //---- SetIndexDrawBegin(0,AtrPeriod); IndicatorDigits(Digits-2); //---- return(0); } //+------------------------------------------------------------------+ //| Average True Range | //+------------------------------------------------------------------+ int start() { int i,counted_bars=IndicatorCounted(); //---- if(Bars<=AtrPeriod) return(0); //---- initial zero if(counted_bars<1) for(i=1;i<=AtrPeriod;i++) Balance[Bars-i]=0.0; //---- Balance[0]=AccountBalance(); i=0; // while(i<100) { //当日统计 // double profit=0; // for(int j=HistoryTotal()-1;j>=0;j--) //由近而远 { if(OrderSelect(j,SELECT_BY_POS,MODE_HISTORY)==false) break; // int shift=iBarShift(Symbol(),PERIOD_D1,OrderCloseTime()); // if(shift>i) break; if(shift==i && OrderProfit()<0.76*Balance) profit+=OrderProfit(); } // Balance[i+1]=Balance-profit; // if(j<=0) break; i++; } // return(0); } //+------------------------------------------------------------------+ [ 本帖最后由 macro 于 2010-7-25 11:17 编辑 ]
走着瞧
注册时间2010-07-18
发表于:2010-07-25 02:38只看该作者
4楼
能按照逐笔成交做成资金K线,并可根据周期不同自动生成日线、周线、月线为好。
macro
注册时间2007-04-08
楼主发表于:2010-07-25 02:43只看该作者
5楼
对于“一周一决”的中长线投资者,可将 int shift=iBarShift(Symbol(),PERIOD_D1,OrderCloseTime()); 中的PERIOD_D1改为PERIOD_W1 或改为Period(),则按K线周期决算。 [ 本帖最后由 macro 于 2010-7-25 10:47 编辑 ]
panexy
注册时间2006-08-14
发表于:2010-07-25 03:01只看该作者
6楼
我记得mt里面有自带,自己生成的曲线 在资金账户一栏
macro
注册时间2007-04-08
楼主发表于:2010-07-25 03:12只看该作者
7楼
//当日统计 // double profit=0; // for(int j=HistoryTotal()-1;j>=0;j--) //由近而远 { if(OrderSelect(j,SELECT_BY_POS,MODE_HISTORY)==false) break; // int shift=iBarShift(Symbol(),PERIOD_D1,OrderCloseTime()); // if(shift>i) break; if(shift==i && OrderProfit()<0.76*Balance) profit+=OrderProfit(); } 奇怪,这一段丢掉了几个字符,怎么也加不上去: if(shift==i && OrderProfit()<0.76*Balance) profit+=OrderProfit(); 0.76*Balance [i] [ 本帖最后由 macro 于 2010-7-25 11:14 编辑 ]
挖金者
注册时间2008-12-19
发表于:2010-07-25 03:16只看该作者
8楼
代码里有两处Balance,
数组变量不能这样用的,编译通不过,应

Balance[0]
或别的数组元素


------------------------------------------------------------------------------------------ if(shift==i && OrderProfit()<0.76*Balance
) profit+=OrderProfit(); } // Balance[i+1]=Balance
-profit; // ------------------------------------------------------------------------------------------ 由于论坛的原因,拷贝粘贴后几乎每行都有论坛自动添进乱码,费了好大的劲来修改它。 如果在软件讨论区,就可以直接上传文件。
挖金者
注册时间2008-12-19
发表于:2010-07-25 03:18只看该作者
9楼
是 Balance[.i.] ? (去掉.)
挖金者
注册时间2008-12-19
发表于:2010-07-25 03:23只看该作者
10楼
成功了。谢谢。 [ 本帖最后由 挖金者 于 2010-7-25 11:27 编辑 ]Balance_Indicator.pngBalance_Indicator.png
个性签名

看年线,设损赢,玄孙去收银。

macro
注册时间2007-04-08
楼主发表于:2010-07-25 03:30只看该作者
11楼
贴到“外汇软件品评”了。
挖金者
注册时间2008-12-19
发表于:2010-07-25 03:56只看该作者
12楼
原帖由 panexy 于 2010/7/25 11:01 发表 http://www.talkforex.com/images/common/back.gif 我记得mt里面有自带,自己生成的曲线 在资金账户一栏
对。 交易记录(History)选全部或自己需要的时段,在纪录上任何地方点右键,然后选择Detail_Report功能。 需要保存文件,包括资金曲线图。文件往往很大,需要时间较长。 在亏损期间,我一般不用这个功能。
在盈利期间,我天天看资金曲线。
;P [ 本帖最后由 挖金者 于 2010-7-25 11:59 编辑 ]
panexy
注册时间2006-08-14
发表于:2010-07-25 12:09只看该作者
13楼
原帖由 挖金者 于 2010-7-25 11:56 发表 http://www.talkforex.com/images/common/back.gif 对。 交易记录(History)选全部或自己需要的时段,在纪录上任何地方点右键,然后选择Detail_Report功能。 需要保存文件,包括资金曲线图。文件往往很大,需要时间较长。 在亏损期间,我一般不用这个功能。 ...
:handshake 谢谢..呵呵
紫蛇
注册时间2009-09-10
驿站美文奖积极参与奖友爱维和奖韬客大帅哥
发表于:2010-07-25 13:38只看该作者
14楼
这么麻烦 如果鼓捣错了 还可不可以复员

本站免责声明:

1、本站所有广告及宣传信息均与韬客无关,如需投资请依法自行决定是否投资、斟酌资金安全及交易亏损风险;

2、韬客是独立的、仅为投资者提供交流的平台,网友发布信息不代表韬客的观点与意思表示,所有因网友发布的信息而造成的任何法律后果、风险与责任,均与韬客无关;

3、金融交易存在极高法律风险,未必适合所有投资者,请不要轻信任何高额投资收益的诱导而贸然投资;投资保证金交易导致的损失可能超过您投入的资金和预期。请您考虑自身的投资经验及风险承担能力,进行合法、理性投资;

4、所有投资者的交易帐户应仅限本人使用,不应交由第三方操作,对于任何接受第三方喊单、操盘、理财等操作的投资和交易,由此导致的任何风险、亏损及责任由投资者个人自行承担;

5、韬客不隶属于任何券商平台,亦不受任何第三方控制,韬客不邀约客户投资任何保证金交易,不接触亦不涉及投资者的任何资金及账户信息,不代理任何交易操盘行为,不向客户推荐任何券商平台,亦不存在其他任何推荐行为。投资者应自行选择券商平台,券商平台的任何行为均与韬客无关。投资者注册及使用韬客即表示其接受和认可上述声明,并自行承担法律风险。

版权所有:韬客外汇论坛 www.talkfx.com 联络我们:[email protected]