金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 4109|回复: 9

帮忙写个程序,先模拟运行

[复制链接]

1

主题

6

帖子

6

积分

Rank: 1

等级: 新手上路

注册:
2021-8-27
曾用名:
发表于 2021-8-27 10:56 | 显示全部楼层 |阅读模式
老师好,本人想求助帮忙写一个程序,能够在金字塔交易软件里运行的策略,先模拟运行一段时间,看效果可以(取代手工交易),就购买金字塔软件的服务,直接跑。

策略内容:

期货市场,日线交易,某品种。

当某日收盘的K线价格A,同时高于20日和30日均线,且次日的k线B,最高点超过某日A的最高点,次日K线B在当天三点前收盘价高于前一日的k线A的收盘价,则开仓做多。
持仓直到某日,当某日收盘的K线价格C,同时低于20日和30日均线,且次日的k线D,最低点超过某日C的最低点,次日K线D在当天三点前收盘价低于前一日的k线C的收盘价,则反手做空。

一直持仓,持续上诉过程,直至合约到期。
能否辛苦老师帮忙把这个程序写出来呢?我直接复制黏贴到金字塔里去,跑跑看。本人是程序零基础,不懂。感谢。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-8-27 11:05 | 显示全部楼层
本帖最后由 技术009 于 2021-8-27 11:12 编辑

“次日K线B在当天三点前收盘价”这个要更明确下 是收盘前某一段时间,比如我收盘前五分钟,还是说我最终结束时的收盘价。
因为这个涉及到一个入场时机的问题,你如果要等到最终收盘价确定,那肯定是只能次日开盘入场了。如果是收盘前N分钟,满足这个收盘价大于昨日收盘价这个条件,那么自然是可以当日就开仓入场了。平仓同理。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

1

主题

6

帖子

6

积分

Rank: 1

等级: 新手上路

注册:
2021-8-27
曾用名:
 楼主| 发表于 2021-8-27 12:11 来自手机 | 显示全部楼层
具体是指,收盘前14:59:30的价格。另外注:如果出现价格不高不低,恰好相同的情况,不执行。如果最终收盘价(三点钟收盘价)不符合规则了,我是否可以次日手动调整更改?是
回复

使用道具 举报

1

主题

6

帖子

6

积分

Rank: 1

等级: 新手上路

注册:
2021-8-27
曾用名:
 楼主| 发表于 2021-8-27 12:13 来自手机 | 显示全部楼层
技术009 发表于 2021-8-27 11:05
“次日K线B在当天三点前收盘价”这个要更明确下 是收盘前某一段时间,比如我收盘前五分钟,还是说我最终结 ...

具体是指,收盘前14:59:30的价格。另外注:如果出现价格不高不低,恰好相同的情况,不执行。如果最终收盘价(三点钟收盘价)不符合规则了,我是否可以次日手动调整更改?感谢回答。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-8-27 13:23 | 显示全部楼层
本帖最后由 技术009 于 2021-8-27 13:28 编辑

[PEL] 复制代码
ma20:ma(c,20);
INPUT:ss(1,1,200,1);
ma20:ma(c,20);
ma30:ma(c,30);

kd1:=c>max(ma20,ma30);
kd2:=h>ref(h,1);
kd3:=c>ref(c,1) AND (NOT(ISLASTBAR) OR (ISLASTBAR AND CURRENTTIME>=145930));//历史回测部分,用最终收盘价判断;实际交易中会按照145930之后的价格判断

kd:=ref(kd1,1) and kd2 and kd3;


kk1:=c<min(ma20,ma30);
kk2:=l<ref(l,1);
kk3:=c<ref(c,1)  AND (NOT(ISLASTBAR) OR (ISLASTBAR AND CURRENTTIME>=145930));


kk:ref(kk1,1) and kk2 and kk3;

if kd  then 
begin 
sellshort(holding<0,holding,market);
buy(holding=0,ss,market);    
end

if kk then 
begin 
sell(holding>0,holding,market);
buyshort(holding=0,ss,market);    
end

持仓:holding;
虚拟资产:ASSET;



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

使用道具 举报

1

主题

6

帖子

6

积分

Rank: 1

等级: 新手上路

注册:
2021-8-27
曾用名:
 楼主| 发表于 2021-8-27 13:26 来自手机 | 显示全部楼层
技术009 发表于 2021-8-27 11:05
“次日K线B在当天三点前收盘价”这个要更明确下 是收盘前某一段时间,比如我收盘前五分钟,还是说我最终结 ...

再注:该程序支持多期货品种,持仓数量可调节。支持同时多品种的开平仓。
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-8-27 13:27 | 显示全部楼层
回测部分,没办法在日线这样大周期上按照 “收盘前14:59:30的价格”处理,直接就按照最终收盘价判定。实际交易时候上面代码是可以做到的。

另外交易时候 务必选择固定轮训模式。如果你对相关软件功能都不熟悉的话,你最好看下基础教程。否则光只有代码,不会软件操作也是不太行的。
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2021-8-27 13:30 | 显示全部楼层
多品种交易,需要你拆分窗口,每个窗口独立设置交易的品种和参数。
参考:
https://www.weistock.com/docs/HE ... E6%A1%86%E6%9E%B6-2
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

1

主题

6

帖子

6

积分

Rank: 1

等级: 新手上路

注册:
2021-8-27
曾用名:
 楼主| 发表于 2023-2-16 20:55 | 显示全部楼层
技术009 发表于 2021-8-27 13:30
多品种交易,需要你拆分窗口,每个窗口独立设置交易的品种和参数。
参考:
https://www.weistock.com/doc ...

老师好,辛苦帮忙写一个突破策略:当某日收盘的K线价格A,高于89日均线,则开仓做多;当某日收盘价格B,低于13日均线,则平仓。
当某日收盘的K线价格C,低于89日均线,则开仓做空;当某日收盘价格D,高于13日均线,则平仓。

谢谢了。

补充内容 (2023-2-16 21:00):
这样的原始策略,真的比完善后的唐安奇策略要差?
回复

使用道具 举报

21

主题

1万

帖子

1万

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
FireScript
发表于 2023-2-17 10:27 | 显示全部楼层
ma89:ma(c,89);
ma13:ma(c,13);



if  cross(c,ma89) and holding=0 then buy(1,1,market);
if cross(ma13,c)  then sell(1,holding,market);

if  cross(ma89,c) and holding=0 then buyshort(1,1,market);
if  cross(c,ma13)  then sellshort(1,1,market);
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-6-9 18:55 , Processed in 0.159353 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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