网站大量收购闲置独家精品文档,联系QQ:2885784924

海龟交易系统R代码概要1.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
海龟交易系统R代码概要1

海龟交易系统R代码 著名的商品投机家理查德·丹尼斯想弄清楚伟大的交易员是天生造就的还是后天培养的。为此,在1983年他招募了13个人,教授给他们期货交易的基本概念,以及他自己的交易方法和原则。 “学员们被称为‘海龟’(丹尼斯先生说这项计划开始时他刚刚从亚洲回来,他解释了自己向别人说过的话,‘我们正在成长为交易员,就象在新加坡他们正在成长为海龟一样’)。” 海龟成为交易史上最著名的实验,因为在随后的四年中海龟们取得了年均复利80%的收益。 丹尼斯证明用一套简单的系统和法则,可以使仅有很少或根本没有交易经验的人成为优秀的交易员。 当时,海龟们认为应对理查德·丹尼斯负责,商定甚至在他们议定的10年必威体育官网网址协定于1993年终止后也不泄露这些法则。但是,有个别海龟在网站上出售海龟交易法则而谋取钱财。两个原版海龟科蒂斯·费思和阿瑟·马多克,为了阻止个别海龟对知识产权的偷窃和出售海龟交易法则而赚钱的行为,决定在网站上将海龟交易法则免费公之于众。 我们现在能看到的海龟交易法则,既是由此所得。 海龟交易系统是一个完整的交易系统,它包括: 市场―买卖什么 头寸规模―买卖多少 入市―何时买卖 止损―何时退出亏损的头寸 离市―何时退出赢利的头寸 策略―如何买卖 R代码(来自Blotter包)如下: # - 海龟系统? #1 ? # 载入所需的库 require(quantmod) require(TTR) require(blotter) ? # 清理R环境,如果该demo程序之前运行过 try(rm(account.turtles,portfolio.turtles,pos=.blotter),silent=TRUE) try(rm(portfolio,account,N, ??????????????? symbol,symbols,ClosePrice,CurrentDate, ??????????????? equity,Units,maxUnits,size,Stop,equity, ??????????????? TxnPrice,initDate,initEq,Posn,verbose),silent=TRUE) ? ? # 设定初始值 initDate=2008-01-01 initEq=100000 print(Initializing portfolio and account structure) # 构建一个带三只股票的小型组合 symbols = c(XLF, XLP, XLE)#, XLY, XLV, XLI, XLB, XLK, XLU) currency(USD) for(symbol in symbols){ ??? stock(symbol, currency=USD,multiplier=1) } ? #创建函数保存过程值 updateStrat - function(Portfolio, Symbol, TxnDate, ??????? PosUnitsQty, UnitSize, StopPrice, TxnPrice, TxnN) { # @作者 Peter Carl ?????? ?????? # 描述: ?????? # 添加交易事务相关数据到STRATEGY时间序列 ?????? ?????? # 输入: ?????? # TxnDate: 以ISO 8106格式的交易日期,例如:2008-09-01 ?????? # PosUnitsQty: 总交易数量(股数) ?????? # StopPrice: 交易完成价格 ?????? # TxnPrice: 最后交易价格 ?????? # TxnN: 为最后交易结算N ?????? ?????? # 输出: ?????? # 没有输出。在本地命名空间修改STRATEGY ?????? ?????? # 函数: ?????? # 保存交易事务与计算,返回投资组合 ?????? pname=Portfolio ?????? NewTxn = xts(t(c(PosUnitsQty, UnitSize, StopPrice, TxnPrice, TxnN)), order.by=as.POSIXct(TxnDate)) ?????? colnames(NewTxn) = c(Pos.Units, Unit.Size, Stop.Price, Txn.Price, Txn.N) ?????? Portfolio-getPortfolio(Portfolio) ?????? Portfolio[[Symbol]]$strat - rbind(Portfolio[[Symbol]]$strat, NewTxn) ?????? assign( paste(portfoli

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档