以文本方式查看主题

-  金字塔客服中心 - 专业程序化交易软件提供商  (http://222.73.7.161/bbs/index.asp)
--  公式模型编写问题提交  (http://222.73.7.161/bbs/list.asp?boardid=4)
----  请教自动添减开仓手数如何写?  (http://222.73.7.161/bbs/dispbbs.asp?boardid=4&id=164917)

--  作者:hsm822
--  发布时间:2018/8/14 15:06:13
--  请教自动添减开仓手数如何写?
我是后台日内自动交易程序,想要添加一个自动加减开仓手数的公式:当连续盈利时自动将开仓手数加倍。一旦出现亏损时将开仓手数降为1手。经电话咨询上海金字塔顾问,说是连续盈亏次数的表达式只能用在图表而后台则不能用。并让我在论坛上请教你们看看如何表述此意。拜托!请写下源代码,多谢!
--  作者:FireScript
--  发布时间:2018/8/14 15:41:46
--  
后台也有对应函数的,如下所示
TNUMSEQLOSS  连亏
TNUMSEQWIN  连盈

假设手数是ss

ss:5;//手数

if TNUMSEQLOSS>=3 then ss:=1;//连亏三次 手数重设为1
if TNUMSEQWIN>=3 then ss:=3*ss;//连赢3次,开仓手数乘3

--  作者:hsm822
--  发布时间:2018/8/14 18:06:36
--  
请教:若日内交易,该品种尚未有任何成交时,TNUMSEQLOSS是=0  吗?  那  TNUMSEQWIN此时是否也=0?
--  作者:yukizzc
--  发布时间:2018/8/15 8:49:20
--  

你开仓和平仓是分开来两个策略,必须按照我另一个贴中和您说的

用全局变量ini文件去做中间转换,没有其他办法

ini文件就好比运输车,用来传递你两个策略之间的货物


--  作者:FireScript
--  发布时间:2018/8/15 8:54:22
--  
 如果没有成交肯定是返回0的。
--  作者:hsm822
--  发布时间:2018/8/15 9:08:12
--  
     请您指教, 以下这个写法有何不对的地方?(kcss是指开仓手数)此公式放在开仓公式内。是否可以不用全局变量啦?
      if   tnumseqwin>=1  and  tnumseqwin<=2    then KCSS:=tnumseqwin*2 ;
      if  (tnumseqloss>=0  or    tnumseqwin>=3)   then KCSS:=1;    若日内尚无成交时,若首次开仓只能是1手。 这么写有哪点错误? 

--  作者:FireScript
--  发布时间:2018/8/15 9:15:32
--  
 上面代码你是想实现什么思路呢? 我只能从你想要实现的思路去判断代码是否有偏差。

--  作者:hsm822
--  发布时间:2018/8/15 10:14:49
--  
我是后台日内多品种自动交易程序,想要添加一个自动加减开仓手数的公式:当连续盈利时自动将开仓手数加倍。一旦出现亏损时将开仓手数降为1手。当日内尚未开仓时,若首次开仓,则开仓手数为1手。以下写的有哪点不对,为什么?多谢费心指教!!
 
     if    TNUMSEQWIN>=1       then   ss:=2*TNUMSEQWIN;      
     if    TNUMSEQLOSS>=0    then   ss:=1;
         

--  作者:FireScript
--  发布时间:2018/8/15 10:39:34
--  
 
ss:=1;//必须有一个初始定义才行
if    TNUMSEQWIN>=1       then   ss:=2*TENTERVOL;      //利用了一个上次开仓量函数。
if     TNUMSEQLOSS>=0    then   ss:=1;

--  作者:hsm822
--  发布时间:2018/8/15 11:25:40
--  
 您使用上次开仓量函数TENTERVOL(ss:=2*TENTERVOL;),那若上次开仓量是亏损,怎么办?它能自动鉴别上次是连续赢还是连续亏吗?