C#平台学习

Discussion in 'General Topics on Software and Data' started by windspeedo, Oct 31, 2008.

  1. C#与RightEdge的数据接口:
    RightEdge没有将数据存储在program files目录,而是C:\Users\USERNAME\AppData\Roaming\Yye Software\RightEdge\2008.1.0.0\Data Store (Windows Vista).

    Dr. ZWZ详细分析了RightEdge's LocalDataStore的文件格式,并提供了源码。
    ...
    FileStream fs = new FileStream(..., FileMode.Create, FileAccess.Write, FileShare.Read);
    BinaryWriter bw = new BinaryWriter(fs);
    ...

    bw.Write( (double)0 );//Ask double类型,RE's LocalDataStore 格式:按字母顺序排序
    bw.Write( (double)0 );//Bid double类型
    bw.Write(sp);//Close double类型
    bw.Write( (byte)0 );//EmptyBar
    bw.Write(zg);//High double类型
    bw.Write(zd);//Low double类型
    bw.Write(kp);//Open double类型
    bw.Write(cc);//OpenInterest int类型
    bw.Write(dt.ToOADate());//PriceDateTime dt为DateTime类型
    bw.Write(sl);//Volume ulong类型

    ...

    bw.Close();

    fs.Close();

    ...

    至于C#如何调用RightEdge的函数。还需要Dr. ZWZ有空指点。:)
     
  2. 没感觉出来matlab在3维图形上面比S/R强。。。。
    加上色彩应该不是叫四维吧。。。。

    我个人对工具没有什么偏见,工具就是工具。我倒是很佩服大圣,建模什么的,还有什么所谓的高深知识都基本没什么概念,却能做到那种程度,实在是了不起的人。

    你所说的1、S-Plus进行统计分析;
    2、MATLAB进行多维展示;
    3、RightEdge进行策略验证;
    的平台概念,展示方面随便哪个软件都可以做得不错,因为你看到的评论都是几年前的,对现在各产品的进化程度是很难了解的。策略验证也可以随便找个嵌入性好的或者用软件直接做。

    还有C#的兼容性问题,我所了解的SAS9.2可以在sas里直接运行c代码,企业挖掘em和其他一些解决方案凡是结果有模型的全都支持直接的多种计算机代码输出,而sas代码本身也可以通过sas提供的C和java语言包嵌入直接在c和java里运行。

    其他的工具现在也开始向这方面发展,已经有不少的工具做到了这点。现在我所了解到的s+的不足是,对于多线程的支持似乎不理想,但是一般使用没有什么问题。

    任何一种工具用好了,不管是简单的还是复杂的,只要是有用,能用上就行了,哪怕是没有什么工具,直接拿眼看,用思考去判断。我就是这样认为的,实际上也是这么回事儿。
     
  3. 在我看的有关资料的印象中,在数量驱动型对冲基金中,MATLAB、SAS是研究部门的人用的,他们做的事情是Ideas,Ideas发展到了Strategies就会转入投资部门,将用自制系统(C++)实现,也有少数采用第三方平台,如QuantHouse等机构级产品,或者Wealth-Lab这样的个人级产品,
    不过,早期时代,数量工程师们主要躲在研究部门的黑屋子里,听命于基金经理(如索罗斯)的吆喝,而现在,这些数学、物理、计算机的博士们已自己成为基金经理(如西蒙斯),吆喝着那些金融专业的博士们干活。当然,最完美的设想还是你自己同时拿下数学、金融两个Ph.D,外加一个MCPD(Microsoft Certified professional Developer)。
     
  4. 如果证券公司营业部大厅中的一位股民同时精通MATLAB、SAS,我猜想他可能用SAS数据库选股,然后用MATLAB建模对选出的那几只股票做技术分析。如果他想ATS(自动下单),就用C家家或C井开发接口,如果券商电脑部不愿意提供柜台系统接口规范,就CRACK。
    MATLAB、SAS的根本区别:一个是数学软件,一个是统计软件。
     
    Last edited by a moderator: Nov 1, 2008
  5. 完全同意。
    我只是个人比较喜欢IT一点。:D
     
  6. 我觉得,金融Ph.D没有什么意思。经济学Ph.D,国外的,还算有点本领。但基本也都是定量/数学的本领。金融学就那么点东西。不值一提。去西蒙斯那应聘,简历上最好不要有什么金融的学位,也不要有华尔街的经历。:cool:
    多谢hylt兄介绍国外quant shop的情况。我很感兴趣的。:D
     
  7. 精辟。
    对于这个人来说,这就是最简单/最佳的解决方案。用什么飞狐定制公式,对他来说,反而不方便。
    每个人有不同的经历、不同的学识、不同的需要,所以,对每个人来说,最佳的工具都不相同,同一个工具的用途也会不同。
    很高兴在hylt各位大侠的指点下,慢慢搞清楚了我的选择空间,也渐渐明白了最适合自己的解决方案。:D
     
  8. 哈哈哈哈~:D
     
  9. 学习了C#读取XML文件的方法。顺利读取RightEdge的watch list。估计读RightEdge的各种指标应该也问题不大。
    RightEdge就像一个完全透明的框架,各个方面都可以与外界/C#交互。
    除了图形。

    现在看来,像我这样不懂编程的人,如果不大量做日内的高频交易,用C#, 充分调用其它程序(RE/MATLAB/IB)的组件,基本可以建立一个灵活性较强的平台,满足日常分析需要。
    当然,如果能用C++,会更好。现在已经遇到一些情况,运算量太大。精力有限,暂时还没有兴趣挑战C++。
     
  10. 关于MATLAB,对于它的matrix计算、作图有直观的印象。但是,对于线形、非线性、建模,不太懂。不但不懂MATLAB在这方面的用处、也不懂这些数学本身。但很想了解 :mad:
    感觉自己对定量的认识,限于数学水平,比较习惯概率、回顾,但对建模缺乏认识、需要提高。所以,很难把MATLAB用好。觉得无从入手。
    hylt兄如方便,还请指点一二入门的途径。
    多谢。
     
  11. 非常不客气的说,以上讨论有点本末倒置。

    我们是在做交易,为什么总把交易搞这么复杂?
    难道要首先成为计算机高手,数学高手,统计高手,然后才能成为交易高手?

    如无必要,勿增实体。想做交易?那就做交易去吧。等学会各种工具,而获利依旧只是一个空中的楼阁,给自己画出来的饼而已。别人不会的计算方法,你会了,不代表就能盈利。

    至于“一个自称超级资产管理机构定量部门老大的人如是说:”
    这些都是垃圾,撤蛋。当金融危机来了,要么失业要么走人,模型都是什么?纯粹一场郁金香的骗局而已。
     
  12. 我同意你的观点,要是数学、计算机、统计、金融、经济真的对投资那么管用,那真正的投资界大牛应该是最牛大学的教授,而因为学习是需要时间的,所以应该是年纪大的挣钱一定比年纪小的挣钱多。可是事实上完全不是这样。

    至于模型的问题,提供一个参考而已,思路要比模型重要得多。可能是你还没有遇到过用模型盈利的人。而模型的概念,不应该仅仅局限于数学模型、财务模型、以及统计模型。:)
     
  13. 恩,我说的模型就是华尔街那种狭义的模型,就是局限于数学模型,正太分布等东西。

    不是系统的意思。实际上,如果交易没有系统,我难以想象能够盈利。哈哈。
     
  14. 举二个现实的例子:
    1)fisher,本论坛较早的参与者,差不多3年前开始学c#,3-5个月时间掌握截取实时行情的方法,成为国内民间较早能够进行全市场tick-by-tick扫描和开发全自动短线交易策略的人;
    2)我的一位同事,6个月前开始学c#,现在在国内权证日内自动交易策略的实践方面已经走到了全行业的最前列;

    最后鼓励一下斑竹和有志者:impossible is nothing
     
  15. 多谢tom_sh兄介绍的情况。
    fisher确实太牛了。截取实时行情目前还不敢奢望。
    我也听说国内一些勤奋的计算机人员在权证上赚了不少钱。
    国内定量投资方面确实还很落后。可以做的事情很多,需要学的东西也很多。以后还请tom_sh兄多指点。:cool:
     
  16. 我还以为学电脑\学数学,总比学赚钱要容易一些呢.:D:D:cool:
     
  17. C#高级编程(第6版)
    Christian Nagel Bill Evjen Jay Glynn等著
    本书为C#经典名著!是Wrox红皮书中最畅销的品种之一。从第1版开始就名满天下,其第3版被评选为2005年最权威的十大IT图书之一,并荣获 “2005年度引进版科技类优秀图书”奖。更可贺的是,其第4版又荣获“2006年最受读者喜爱的十大技术开发类图书”!第6版在详尽论述C# 2005的基础上,又增加了.NET 3.0 Framework的新特性,更加完善了C#的技术。
     
  18. 更锋利的C#代码--编写高质量C#程序
    作者:包善东
    一个好的程序,不仅仅是能得出正确的运行结果,而且还应在其内部保持清晰的代码逻辑和语义,否则,跟随在正常结果之后的也许是艰难的代码维护工作,对程序进行一处修改往往会牵一发而动全身,一不小心就会埋下深深的隐患。从另一个角度来说,如果每一行代码的质量都很高,那么这个软件产品也一定是高质量的。
     
  19. C++和dll的呢?:)