金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 302|回复: 4

老师能帮我修改一下吗

[复制链接]

8

主题

37

帖子

37

积分

Rank: 1

等级: 新手上路

注册:
2024-6-4
曾用名:
发表于 2024-9-17 13:57 | 显示全部楼层 |阅读模式
交易代码要求;1,采用15分钟图表,用10日均线为参考,k线在10日均线上方做多,在10日均线下方做空。2,初始买入2手,止盈止损5跳。3,当止赢后,同时继续买入2手,继续止赢继续买入2手,当止损后就同时买入3手,如果连续止损,就继续买入3手,当从止损那一手开始计算到每次买如3手结束,胜率需达到50%,然后又从2手开始买入。试例[+2+2+2(-2-3-3+3+3-3+3+3计算胜率需达到50%)+2]。4,每次买入前都需平掉全部仓位。
average_price := 0;
ss := 2;

// 获取 15 分钟图表的 10 日均线
ma10 := MA(C, 10);

// 定义模拟 len 功能的函数
function len(listVariable) {
    let count = 0; // 初始化计数变量为 0
    for (let item of listVariable) {
        count++; // 每遍历一个元素,计数加一
    }
    return count; // 返回列表中元素的数量
}

// 平空止盈
IF (average_price - C > 5 * MINDIFF) AND HOLDING < 0 THEN
BEGIN
    SELLSHORT(2, HOLDING, marketr);
    ss := 2;
    average_price := 0;
END

// 平空止损
IF (C - average_price > 4 * MINDIFF) AND HOLDING < 0 THEN
BEGIN
    SELLSHORT(2, HOLDING, marketr);
    ss := 2;
    average_price := 0;
END

// 平多止盈
IF (C - average_price > 5 * MINDIFF) AND HOLDING > 0 THEN
BEGIN
    SELL(2, HOLDING, marketr);
    ss := 2;
    average_price := 0;
END

// 平多止损
IF (average_price - C > 4 * MINDIFF) AND HOLDING > 0 THEN
BEGIN
    SELL(2, HOLDING, marketr);
    ss := 2;
    average_price := 0;
END

// 做多条件及操作
IF C > ma10 THEN
BEGIN
    // 如果有空仓,则先平空
    IF HOLDING < 0 THEN
    BEGIN
        SELLSHORT(abs(HOLDING), HOLDING, marketr);
        ss := 2;
        average_price := 0;
    END
    // 买入开仓
    BUY(2, ss, marketr);
    average_price := C;
    IF ss = 3 AND HOLDING > 0 THEN
        ss := 2;
END

// 做空条件及操作
IF C < ma10 THEN
BEGIN
    // 如果有多仓,则先平多
    IF HOLDING > 0 THEN
    BEGIN
        SELL(HOLDING, HOLDING, marketr);
        ss := 2;
        average_price := 0;
    END
    // 卖空开仓
    BUYSHORT(2, ss, marketr);
    average_price := C;
    IF ss = 3 AND HOLDING < 0 THEN
        ss := 2;
END

// 胜率计算及手数调整
// 假设 winning_trades 和 losing_trades 是记录盈利和亏损交易的全局变量
total_trades := len(winning_trades) + len(losing_trades);
IF total_trades > 0 AND len(winning_trades) / total_trades < 0.5 AND HOLDING < 0 THEN
BEGIN
    IF ss = 2 THEN
        ss := 3;
END
IF total_trades > 0 AND len(winning_trades) / total_trades >= 0.5 AND HOLDING < 0 THEN
BEGIN
    ss := 2;
END
IF total_trades > 0 AND len(winning_trades) / total_trades < 0.5 AND HOLDING > 0 THEN
BEGIN
    IF ss = 2 THEN
        ss := 3;
END
IF total_trades > 0 AND len(winning_trades) / total_trades >= 0.5 AND HOLDING > 0 THEN
BEGIN
    ss := 2;
END

回复

使用道具 举报

31

主题

7766

帖子

7776

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-9-18 09:24 | 显示全部楼层
ma10:ma(c,10);
variable:ss=2;
if close>ma10 and holding<=0 then
begin
        sellshort(1,holding,marketr);
        buy(1,ss,marketr);
END

if close<ma10 and holding>=0 then
begin
        sell(1,holding,marketr);
        buyshort(1,ss,marketr);
END
//止盈止损
if close>AVGENTERPRICE+5*mindiff and holding>0 then
begin
        sell(1,holding,marketr);
        ss:=2;
end
if close<AVGENTERPRICE-5*mindiff and holding>0 then
begin
        sell(1,holding,marketr);
        ss:=3;
end
if close>AVGENTERPRICE+5*mindiff and holding<0 then
begin
        sellshort(1,holding,marketr);
        ss:=3;
end
if close<AVGENTERPRICE-5*mindiff and holding<0 then
begin
        sellshort(1,holding,marketr);
        ss:=2;
end
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

37

帖子

37

积分

Rank: 1

等级: 新手上路

注册:
2024-6-4
曾用名:
 楼主| 发表于 2024-9-18 09:36 | 显示全部楼层
技术008 发表于 2024-9-18 09:24
ma10:ma(c,10);
variable:ss=2;
if close>ma10 and holdingAVGENTERPRICE+5*mindiff and holding>0 then  ...

variable:ss=2;回测显示ss变量名重复,应该怎么修改

补充内容 (2024-9-18 09:41):
有几个地方都显示ss变量名重复
回复

使用道具 举报

31

主题

7766

帖子

7776

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-9-18 09:42 | 显示全部楼层
是不是这里有ss了,自己删掉
代码里只有一个ss的
截图202409180942256404.png
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

8

主题

37

帖子

37

积分

Rank: 1

等级: 新手上路

注册:
2024-6-4
曾用名:
 楼主| 发表于 2024-9-18 09:45 | 显示全部楼层
技术008 发表于 2024-9-18 09:42
是不是这里有ss了,自己删掉
代码里只有一个ss的

谢谢,是我大意了
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-24 03:37 , Processed in 0.186610 second(s), 24 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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