摘要: 推荐单元测试新的模拟框架:Nsubstitute 目前,.NET已经有很多强大模拟框架,为什么还要再重新写一个呢?按照Nsubstitute的官方说法是:所有的模拟框架都已经有强大的功能,但是现存的框架当中,没有一个满足我们对更简洁语法风格的追求。第一次看到Nsubstitute,是在看Nunit的源码时发现,实际上Nunit已经不推荐大家使用它原来的Mock框架,它引入了Nsubstitute。经了解,Nsubstitute已经是一个具有两年多历史的模拟框架,也算是比较年轻的框架,它昨天(2012-5-4)刚发布了1.4版本。模拟框架很多,我们的选择很多,但是从现在开始,我们可以考虑一下用N阅读全文
posted @ 2012-05-05 14:49 可乐加冰 阅读(2032) 评论(0) 编辑
摘要: 1、关于QuickFIXQuickFix是一个C++FIX引擎,早期就(2001年)实现FIX协议的FIX引擎,它是免费、开放源码的,主要实现语言是C++,对.NET用户,它提供了.NET的封装,使得C#用户也能轻易用上。Python,Ruby也可以用。它的源码在http://sourceforge.net/projects/quickfix/files/quickfix/。早期的.NET用户一般都选择QuickFix,这是一个很受欢迎的开源引擎,虽然它的性能不是很优秀,但它已经可以满足一般的应用要求。QuickFix/N是100%使用.NET(C#)实现,免费并且完全开源的,是.NET用户最阅读全文
posted @ 2012-04-30 10:44 可乐加冰 阅读(2269) 评论(0) 编辑
摘要: 1)关于数据字典通常,为了满足的业务需求,我们需要对接的一般都是已修改过的或自定义的FIX协议。QuickFIX/N为我们提供了一些强大的方式来处理这个问题,其中最简单的是通过数据字典(DataDictionary)。数据字典定义了会话所有用到的字段、组及消息定义。通常,在接口对接之前,对接双方一起商定FIX协议的版本,以及个性化的字段或消息定制。如果双方恰巧都是用QuickFIX引擎,理论上,双方的协议数据字典文档应该是一致的。数据字典文档为QuickFIX/N会话指定协议的所有定义。当会话包含自定义的字段,组字段,或消息,我们将更改这个FIX规范文档。协议的数据字典文档是在配置文件指定的,阅读全文
posted @ 2012-04-29 16:31 可乐加冰 阅读(2413) 评论(0) 编辑
摘要: 分组(group)是包含一个无序的字段的集合的命名类型。允许在一个循环组里出现重复的数据字段。QuickFIX/N实现了在FIX消息中创建和读取的组信息的功能。1)创建循环分组创建一个循环分组很简单:创建一个分组类的实例,向分组内添加字段,然后把它添加到消息中vartcr=newQuickfiFix.FIX44.TradeCaptureReport();varsidesGrp1=newQuickFix.FIX44.TradeCaptureReport.NoSidesGroup();sidesGrp1.Account=newAccount("Silvio");sidesGrp阅读全文
posted @ 2012-04-29 16:29 可乐加冰 阅读(1856) 评论(1) 编辑
摘要: Acceptor或者Initiator能够为您维护尽可能多的FIX会话,因而FIX会话标识的唯一性非常重要。在QuickFIX/N中,一个FIX会话的唯一标识是由:BeginString(FIX版本号)、SenderCompID(发送方ID)及TargetCompID(目标方ID)等标识字符组合而成。通常还会加上SessionQualifier来保证会话的唯一性。每个FIX会话可以有很多与它们相关联的配置信息。在编译的时候,有些配置可能还是未知的,因此可以通过类SessionSettings来设置或加载。SessionSettings是一个数据字典,可以随意设置和查询配置信息。SessionS阅读全文
posted @ 2012-04-28 21:44 可乐加冰 阅读(4548) 评论(1) 编辑
摘要: 一、发送消息QuickFIX/N的发送FIX消息的简单示例:FIX44.NewOrderSingle order = new FIX44.NewOrderSingle( new ClOrdID("1234"), new Symbol("000001"), new Side(Side.BUY), new TransactTime(DateTime.Now), new OrdType(OrdType.MARKET));Session.SendToTaget(order, sessionID);首先,我们需要学习如何使用会话发送指令消息。1) QuickFIX阅读全文
posted @ 2012-04-27 09:01 可乐加冰 阅读(5037) 评论(0) 编辑
摘要: QuickFix/N简介FIX是Financial Information eXchange的简称。FIX是一种专门为实时电子证券交易设计的标准消息协议。该协议由FIX protocol, Ltd(FPL)所有并维护。FIX协议的官方网址为http://www.fixprotocol.org/QuickFix引擎(http://www.quickfixengine.org/)一个开源的FIX引擎,其中它有JAVA、C++、C#三个版本的实现。QuickFix/N是实现了FIX协议4.0-5.0版本及其功能的开源软件,100%使用.NET(C#)实现。 QuickFix/N官网下载 http:/阅读全文
posted @ 2012-04-26 21:31 可乐加冰 阅读(7231) 评论(0) 编辑
摘要: 以下是自己在学习PMP时,在网上找到个人觉得最好的资料。自己看过了吴永达的视频及资料,觉得很不错,值得分享。(以下内容不是是原创)。吴永达老师(PMBOK第四版/2008版)的资料分享:资料如下:PMP强化记忆手册(Excel 版本,记录以下内容:PMBOK2008-全部过程活动,项目管理过程组和知识领域表,项目管理详细任务V2,42个过程定义,75个可交付成果,129个工具与技术)PMP强化记忆MP3录音42个过程定义,75个可交付成果,129个工具与技术 录音PMP考试手册(最新版)讲解PMP考试相关的,及其参考的资料图解项目管理(2008版)(V3)以PPT讲义的形式来讲解整个项目管理过阅读全文
posted @ 2012-04-25 11:53 可乐加冰 阅读(827) 评论(0) 编辑
摘要: 今天在调试程序时发现了一个异常 :“类型初始值设定项引发异常” ,第一次发现。关于TypeInitializationException异常,MSDN的解析:由类初始值设定项引发的异常周围的包装引发的异常。 程序里面的异常点是获取单一实例对象是报的异常,百思不得其解。再仔细查一下发现单一实例对象为null,实例化失败了。而这个类的构造函数里面有2个类的实例化,怀疑是构造函数里面抛出了异常。原来是里面两个类的调用了需要连接数据库的操作,而连接数据库操作失败了,进而抛出了异常,但是在单一实例的实例化函数里面确得不到连接数据库的异常。这个问题隐藏得比较深,最终出现这个问题的原因,原来是数据库配...阅读全文
posted @ 2011-08-30 17:43 可乐加冰 阅读(813) 评论(0) 编辑
摘要: 浪费时间的主观原因有:1、做事目标不明确;2、作风拖拉;3、缺乏优先顺序,抓不住重点;4、过于注重细节;5、做事有头无尾;6、没有条理,不简洁,简单的事情复杂化;7、事必躬亲,不懂得授权;8、不会拒绝别人的请求;9、消极思考。一项国际调查表明:一个效率糟糕的人与一个高效的人的工作效率相差可达10倍以上。为了更有效的利用时间,我们应该检讨一下自己的时间管理是否科学,是否把精力花在了错误的事情上。时间管理好了,提高了工作效率,可以避免少加班。阅读全文
posted @ 2011-08-27 11:41 可乐加冰 阅读(364) 评论(0) 编辑