金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
楼主: 最初的梦想

老师,跪求帮写一个图表程式化交易的:

[复制链接]

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-9-16 10:41 | 显示全部楼层
本帖最后由 技术009 于 2021-9-16 10:57 编辑

你这里还有些地方需要理清:
价格肯定是波动的,并且价格也未必是连续上涨的。如果从最低价开始上涨
比如我一次性上涨很多,直接是5倍0.005  ,这样后面价格可能又回落了。这种情况下原先1倍-4倍0.005 位置都是没开过仓的。这种是直接忽略还是怎么样的处理思路呢?

类似的情况 还有 行情开始一段时间后才开始交易,这时候可能价格已经处于某一个档位了。

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-9-16 21:55 | 显示全部楼层
直接忽略

补充内容 (2021-9-16 22:04):

如出现这种极端的,到时我也可以改一下买/卖数量为0.只交易单边
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-9-17 14:58 | 显示全部楼层
本帖最后由 技术006 于 2021-9-17 16:23 编辑

最后一个细节地方。比如我入场是半途入场的,这时候价格已经是高点回落了3倍0.005了。这时候是直接开一手,还是等到继续跌到4倍时候进行开仓呢?

注:开平数量0,代表全部资金买入或者全平

金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-9-17 21:21 | 显示全部楼层
技术009 发表于 2021-9-17 14:58
最后一个细节地方。比如我入场是半途入场的,这时候价格已经是高点回落了3倍0.005了。这时候是直接开一手, ...

1.半途入场的,这时候价格已经是高点回落了3倍0.005了。这时候,直接开一手就可以了。
2.如开平数量想调整为0,有办法吗?或者是只能关闭自动化交易?
回复

使用道具 举报

20

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-9-18 10:18 | 显示全部楼层
本帖最后由 技术009 于 2021-9-18 10:20 编辑

[PEL] 复制代码
INPUT:T(3,1,200,1),DIF(0.005,0.001,100,1),SS(1000,1,100000,1);//T为高低价统计的时间,默认为开盘前三分钟;DIF为价差参数,默认为0.005;SS是手数参数
GLOBALVARIABLE:levelb:=-1,levels:=-1;//超全局变量用来记录最近一次 买和卖 时候的档位。

//开盘三分钟的最高最低价
H1:VALUEWHEN(TODAYBAR=T,HHV(H,TODAYBAR));
L1:VALUEWHEN(TODAYBAR=T,LLV(L,TODAYBAR));


if  TODAYBAR=1 then //开盘初始化一次 
begin 
levelb:=-1;
levels:=-1;
end        

level1:=FLOOR((H1-c)/DIF);//当前价格从最高点回落的 档位
level2:=FLOOR((c-l1)/DIF);//当前价格从最低点上涨的 档位


if levelb=-1 then levelb:=max(1,level1);
if levels=-1 then levels:=max(1,level2);



upprice:=H1-(max(levelb,level1))*DIF;//跌破这个价格买入,每次买后,levelb升一档。考虑到价格可能不连续变化,实际取(上次记录的档位,当前实际档位)最大值计算价格
dnprice:=L1+(max(levels,level2))*DIF;//突破这个价格卖出,每次卖后,levels升一档。

买:=c<=upprice and  levelb>=0 ;
卖:=c>=dnprice and TBUYHOLDINGEX('','',1)>0 and  levels>=0;

if 卖 and TODAYBAR>T then //开盘三分钟后才允许交易
begin
tsell(1,SS,mkt);
levels:=level2+1;
end


if 买  and TODAYBAR>T then 
begin        
tbuy(1,SS,mkt);
levelb:=level1+1;
end





还需要最后测试几波,节后再测试吧。

上面代码逻辑就是开盘T分钟后,开始交易。按照T分钟最高最低价作为上下轨。最新价跌破上轨一个DIF(0.005)买入1000股,突破最低价一个DIF(0.005)卖出1000股。代码里是按照0.005的间距 从最低和最高价给当前价格划分档位,只有突破最近一次交易时候的档位或者当前最新价格档位(2者取其大,因为存在价格突然大幅度变化的情况) 才能下单,比如最近一次买入时候是1挡,下次必须突破到2挡才能下单,每次下单后更新记录的档位。另外2次下单价格价差可能不是刚好0.005,但是必然是2个档位上,通常来说除非是价格突然跳动了很大幅度,正常情况下2次下单价差都会在0.005上下左右,不会差太多。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-9-20 20:50 | 显示全部楼层
好的,非常感谢!!,祝您中秋快乐!
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-12-6 22:12 | 显示全部楼层
老师,刚上实盘,程序不执行交易。我加载的是日线。
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-12-6 22:32 | 显示全部楼层
是不是加载周期错了
回复

使用道具 举报

34

主题

9187

帖子

5万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
wenarm
发表于 2021-12-7 07:07 | 显示全部楼层
上头的策略是后台程序化策略。你加载的是图表还是后台。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

2

主题

27

帖子

27

积分

Rank: 1

等级: 新手上路

注册:
2021-8-23
曾用名:
 楼主| 发表于 2021-12-7 21:27 | 显示全部楼层
后台
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 微信登录

本版积分规则

手机版|小黑屋|上海金之塔信息技术有限公司 ( 沪ICP备13035422号 )

GMT+8, 2024-12-22 18:35 , Processed in 0.208685 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表