金字塔决策交易系统

 找回密码
 

微信登录

微信扫一扫,快速登录

搜索
查看: 15|回复: 5

输出问题

[复制链接]

76

主题

337

帖子

337

积分

等级: 已到期

注册:
2021-10-18
曾用名:
发表于 2024-11-14 12:21 | 显示全部楼层 |阅读模式
哪错?修改下 编译错误:
标识符“DEBUGFILE( 1,STKLABEL+ 2 +(DAYO”长度不能大于20字符。
-------------

dayo := CALLSTOCK('', VTOPEN, 6, 0); // 当前开盘价
dc := CALLSTOCK('', VTCLOSE, 6, 0); // 当前收盘价
d := (dc - dayo) / dayo; // 计算涨幅,确保使用正确的公式


kk1B := FALSE; // 初始化kk1B为FALSE


// 调试输出当前开盘价、收盘价和涨幅
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
          STKLABEL + ' 开: ' + (dayo:0:2));
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
          STKLABEL + ' 收: ' + (dc:0:2));
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
          STKLABEL + ' 涨: ' + (d * 100:0:2));


// 检查最近20日内是否有跌幅超过-1.8%
for i := 0 to 19 do // 遍历最近20天
begin
    // 计算过去20天的涨幅
    pastClose := CALLSTOCK('', VTCLOSE, 6, -i);
    pastOpen := CALLSTOCK('', VTOPEN, 6, -i);
    pastChange := (pastClose - pastOpen) / pastOpen; // 计算过去一天的涨幅


    // 调试输出过去20天的开盘价、收盘价和涨幅
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
              STKLABEL + ' ' + (i + 1):0 + '开: ' + (pastOpen:0:2));
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
              STKLABEL + ' ' + (i + 1):0 + '收: ' + (pastClose:0:2));
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
              STKLABEL + ' ' + (i + 1):0 + '涨: ' + (pastChange * 100:0:2));


    if pastChange < -0.018 then
    begin
        kk1B := TRUE; // 如果有一天的跌幅超过-1.8%,则设置kk1B为TRUE
        DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
                  STKLABEL + ' 跌超: ' + (i + 1):0);
        break; // 找到后退出循环
    end;
end;


// 输出最终结果
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',
          STKLABEL + ' kk1B: ' + (kk1B:0));


回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-11-14 13:04 | 显示全部楼层
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',STKLABEL + ' 开:%.2f',dayo);

你要看函数说明,一共三个位置参数,前面两个是文件路径和一段文字描述,最后一个位置才是输出的数值
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

76

主题

337

帖子

337

积分

等级: 已到期

注册:
2021-10-18
曾用名:
 楼主| 发表于 2024-11-14 13:47 | 显示全部楼层
技术008 发表于 2024-11-14 13:04
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt',STKLABEL + ' 开:%.2f',dayo);

你要看 ...

那修改下呗
回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-11-14 13:48 | 显示全部楼层
上面的就是的
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

76

主题

337

帖子

337

积分

等级: 已到期

注册:
2021-10-18
曾用名:
 楼主| 发表于 2024-11-14 15:01 | 显示全部楼层

2024-11-14 14:58:13.432    AG00 开: 7705.00
2024-11-14 14:58:13.432    AG00 收: 7497.00
2024-11-14 14:58:13.433    无效的字符串格式符
2024-11-14 14:58:13.433    无效的字符串格式符
2024-11-14 14:58:13.434    无效的字符串格式符
----------------
帮修正下,如下:
dayo := CALLSTOCK('', VTOPEN, 6, 0); // 当前开盘价
dc := CALLSTOCK('', VTCLOSE, 6, 0); // 当前收盘价
d := (dc - dayo) / dayo; // 计算涨幅,确保使用正确的公式

kk1B := FALSE; // 初始化kk1B为FALSE

// 调试输出当前开盘价、收盘价和涨幅
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 开: %.2f', dayo);
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 收: %.2f', dc);
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 涨: %.2f%%', d * 100);

// 检查最近20日内是否有跌幅超过-1.8%
for i := 0 to 19 do // 遍历最近20天
begin
    // 计算过去20天的涨幅
    pastClose := CALLSTOCK('', VTCLOSE, 6, -i);
    pastOpen := CALLSTOCK('', VTOPEN, 6, -i);
    pastChange := (pastClose - pastOpen) / pastOpen; // 计算过去一天的涨幅

    // 调试输出过去20天的开盘价、收盘价和涨幅
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 开: %.2f', pastOpen);
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 收: %.2f', pastClose);
    DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 涨: %.2f%%', pastChange * 100);

    // 检查跌幅是否超过-1.8%
    if pastChange < -0.018 then
    begin
        kk1B := TRUE; // 如果有一天的跌幅超过-1.8%,则设置kk1B为TRUE
        DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' 跌超: %.2f%%', pastChange * 100); // 输出跌幅
        break; // 找到后退出循环
    end;
end;

// 输出最终结果
DEBUGFILE('C:\Weisoft StockDF(x64)\Setting\OrderLog\涨跌.txt', STKLABEL + ' kk1B: %d', kk1B);
回复

使用道具 举报

30

主题

7075

帖子

7085

积分

Rank: 8Rank: 8

等级: 超级版主

注册:
2021-5-18
曾用名:
发表于 2024-11-14 15:04 | 显示全部楼层
后面不可以再加%的,只能%.2f结尾
金字塔提供一对一VIP专业技术指导服务,技术团队实时响应您的日常使用问题与策略编写。联系电话:021-20339086
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-16 00:37 , Processed in 0.287935 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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