MC- 挂单STOP交易
using System; using System.Drawing; using System.Linq; using PowerLanguage.Function; using ATCenterProxy.interop; namespace PowerLanguage.Strategy { public class Example_StopLimit : SignalObject { private IOrderMarket buyMarketOrder, sellMarketOrder; private IOrderStopLimit sellStopLimitOrder; private double sellStopPrice, sellLimitPrice; public Example_StopLimit( object _ctx) : base (_ctx) { } protected override void Create() { buyMarketOrder = OrderCreator.MarketNextBar( new SOrderParameters( Contracts.Default, "EnterLong" , EOrderAction.Buy)); sellMarketOrder = OrderCreator.MarketNextBar( new SOrderParameters( Contracts.Default, "ExitLong" , EOrderAction.Sell)); sellStopLimitOrder = OrderCreator.StopLimit( new SOrderParameters( Contracts.Default, "StopLMT" , EOrderAction.Sell)); } protected override void StartCalc() { Output.Clear(); // Clear PowerLanguage Editor output tab } protected override void CalcBar() { // When flat, enter long on first bar of day if ((StrategyInfo.MarketPosition == 0) && (Bars.Time[0].Date != Bars.Time[1].Date)) { buyMarketOrder.Send(); sellStopPrice = Bars.Low[0] - Bars.Range(); sellLimitPrice = Bars.Low[0] - (Bars.Range() * 1.5); Output.WriteLine( "{0} - Buy order submitted. Sell stop calculated @ {1} with limit {2}" , Bars.Time[0].ToString( "d-M HH:mm:ss" ), sellStopPrice, sellLimitPrice); } // Long order management if (StrategyInfo.MarketPosition > 0) { // Submit the stop-limit order as long as there is an open position sellStopLimitOrder.Send(sellStopPrice, sellLimitPrice); Output.WriteLine( "{0} - Submitting sell stop @ {1} with limit {2}" , Bars.Time[0].ToString( "d-M HH:mm:ss" ), sellStopPrice, sellLimitPrice); // Time stop; exit the position after 15 bars double barsInPosition = Bars.CurrentBar - CurrentPosition.OpenTrades[0].EntryOrder.BarNumber; if (barsInPosition >= 15) { sellMarketOrder.Send(); Output.WriteLine( "{0} - Position open for {1} bars, submitting exit long market order" , Bars.Time[0].ToString( "d-M HH:mm:ss" ), barsInPosition); } } } } }
|
MC- 挂单STOP交易的更多相关文章
- 转载自 BotVS 「 珍藏版 」如何搭建一个完整的交易框架
[img]http://dn-filebox.qbox.me/8c218c119046b2a25df2d9c7b00c1e0fa6899bdd.png[/img]NO:01 交易策略 ≠ 交易系统. ...
- 量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python)(转)
量化交易中VWAP/TWAP算法的基本原理和简单源码实现(C++和python) 原文地址:http://blog.csdn.net/u012234115/article/details/728300 ...
- 券商VIP交易通道
打新不成就炒新.随着新股发行上市的再次重启,巨大的获利机会引来投资者的争相竞逐,可并非所有投资者都能抢到新股筹码.“每天都在涨停板追这些新股,但从来没有买到过.”证券时报记者在采访中听到不少中小散户如 ...
- vnpy交易学习接口(2)
#来源于github下载vnpy版本 20180413 11.多投资标的情况下,该如何修改? 10.stop和limit报单有什么区别呢? 在交易时用得最多的是二类定单,第一类是市价单(Market ...
- 高频交易算法研发心得--MACD指标算法及应用
凤鸾宝帐景非常,尽是泥金巧样妆. 曲曲远山飞翠色:翩翩舞袖映霞裳. 梨花带雨争娇艳:芍药笼烟骋媚妆. 但得妖娆能举动,取回长乐侍君王. [摘自<封神演义>纣王在女娲宫上香时题的诗] 一首定 ...
- Oracle交易流水号问题
需求:生成交易流水号,每次新增一条记录时都自动加1,且流水号形式为000000001形式的10位数字. 思路:利用序列可以生成自增的流水号,只需要在前面添加N个0即可,同时,由于数字的长度一定,因此可 ...
- android/java 根据当前时间判断股票交易状态(未开盘 交易中 休市中 已收盘)
/** * @param data yyyy-MM-dd HH:mm:ss 时间 * @return 未开盘 交易中 休市中 已收盘 */ public static String getSotckS ...
- 微信JSApi支付~订单号和微信交易号
返回目录 谈谈transactionId和out_trade_no 前一篇微信JSApi支付~坑和如何填坑文章反映不错,所以又写了个后篇,呵呵. 每个第三方在线支付系统中都会有至少两类订单号,其一为支 ...
- python 优矿自动化交易
一.进入官网,打开notebook 自己新建 notebook 二.在代码中编写自己的交易策略 https://uqer.io/help/faqApi/#account相关属性 在帮助文档中可以找到 ...
- [python]初试页面抓取——抓取沪深股市交易龙虎榜数据
[python]抓取沪深股市交易龙虎榜数据 python 3.5.0下运行 没做自动建立files文件夹,需要手动在py文件目录下建立files文件夹后运行 #coding=utf-8 import ...
随机推荐
- ios开发设置不同字体
最近项目开发中遇到需要设置指定字体的需求,研究了一下字体设置,最后附有我写的一个小demo,先来看一下效果: 开始上网搜了一下,普遍说到以下方法 for(NSString *fontfamilynam ...
- moodle其他搜集
1.将面包屑的符号换成">>",找到皮肤包里的config.php文件,在最后加入 $THEME->rarrow=">>"; ...
- HDU 5886 Tower Defence
树的直径. 比赛的时候想着先树$dp$处理子树上的最长链和次长链,然后再从上到下进行一次$dfs$统计答案,和$CCPC$网络赛那个树$dp$一样,肯定是可以写的,但会很烦.......后来写崩了. ...
- CentOS 7中将Tomcat设置为系统服务
tomcat 需要增加一个pid文件,在tomca/bin 目录下面,增加 setenv.sh 配置,catalina.sh启动的时候会调用,在该文件中添加如下内容 CATALINA_PID=&quo ...
- .net程序在无.net环境下运行
看了篇文章 测试了下竟然真的可以运行 测试环境是XP下 没有装NET2.0的情况下 可以运行的 不过需要每次输入命令才能运行 点击后还是会报错 原文如下 众所周知,.net程序必须运行在.n ...
- [ An Ac a Day ^_^ ] POJ 3254 Corn Fields 状压dp
题意: 有一块n*m的土地 0代表不肥沃不可以放牛 1代表肥沃可以放牛 且相邻的草地不能同时放牛 问最多有多少种放牛的方法并对1e8取模 思路: 典型的状压dp 能状态压缩 能状态转移 能状态压缩的题 ...
- Java面试题及答案(基础122道,编码19道)
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...
- Objective-C Runtime 运行时之一:类与对象(转载)
Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了运行时来处理.这种动态语言的优势在于:我们写代码时更具灵活性,如我们可以把消息转发给我们想要的对象,或者随意交换一 ...
- 原 iOS深入学习(Block全面分析)http://my.oschina.net/leejan97/blog/268536
原 iOS深入学习(Block全面分析) 发表于1年前(2014-05-24 16:45) 阅读(26949) | 评论(14) 39人收藏此文章, 我要收藏 赞21 12月12日北京OSC源创会 ...
- Swift2.3适配Swift3.0时出现的各种问题
昨晚上一波手贱把我的小5s升到iOS10.如此配套的话,Xcode7.3升级Xcode8.1看来也是势在必行了.公司程序是Swift2.3的,出于对苹果的恐惧迟迟不敢升级.但丑媳妇儿总要见公婆,借这个 ...