📝 docs(tsl): archive three benchmark scripts referenced by README
- add scripts/main_board_top50_zf_{claude,codex,qwen3.6-27b}.tsl as produced
- sync round-1 code block and archived filename in README
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
// 主板股票昨日涨幅排名前 50
|
||||
// 主板成分:上证A股 + 深证A股(getAbkbyDate 支持分号分隔多板块)
|
||||
// “昨天”取当前日期的前一个交易日,避开周末/节假日
|
||||
|
||||
setSysParam(pn_cycle(), cy_day());
|
||||
|
||||
yday := lastTradeDay(date()); // 昨日(最近一个已收盘交易日)
|
||||
prevday := lastTradeDay(yday); // 昨日的前一个交易日
|
||||
|
||||
stocks := getAbkbyDate('上证A股;深证A股', yday);
|
||||
|
||||
result := array();
|
||||
for i, stockid in stocks do
|
||||
begin
|
||||
setSysParam(pn_stock(), stockid);
|
||||
zf := stockZf8(prevday, yday); // prevday 收盘 -> yday 收盘的涨幅(%),即昨日涨幅
|
||||
appendArray(result, array("StockID": stockid, "Zf": zf));
|
||||
end
|
||||
|
||||
sortTableByField(result, "Zf", 0); // 按涨幅逆序
|
||||
|
||||
top50 := array();
|
||||
n := length(result);
|
||||
if n > 50 then
|
||||
begin
|
||||
n := 50;
|
||||
end
|
||||
for i := 0 to n - 1 do
|
||||
begin
|
||||
appendArray(top50, result[i]["StockID"]);
|
||||
end
|
||||
|
||||
return top50;
|
||||
@@ -0,0 +1,22 @@
|
||||
end_t := yesterday();
|
||||
|
||||
stocks := getAbkbyDate('上证A股;深证A股', end_t);
|
||||
|
||||
data := select ['StockID'] as "Code",
|
||||
spec(specDate(stockZf3(), ['date']), ['StockID']) as "Zf"
|
||||
from markettable datekey end_t to end_t of stocks end;
|
||||
|
||||
sorted := select ["Code"] from data order by ["Zf"] desc end;
|
||||
|
||||
n := min(50, length(sorted));
|
||||
result := array();
|
||||
if n > 0 then
|
||||
begin
|
||||
for i := 0 to n - 1 do
|
||||
begin
|
||||
result[i] := sorted[i]["Code"];
|
||||
writeLn(result[i]);
|
||||
end;
|
||||
end;
|
||||
|
||||
return result;
|
||||
@@ -0,0 +1,26 @@
|
||||
#! 获取昨天主板所有股票涨幅排名,取前50股票代码
|
||||
|
||||
dt := yesterday();
|
||||
dt_prev := dt - 1;
|
||||
|
||||
stocks := getAbkbyDate('上证A股;深证A股', dt);
|
||||
n := length(stocks);
|
||||
|
||||
gains := array();
|
||||
for i := 0 to n - 1 do
|
||||
begin
|
||||
setSysParam(PN_Stock(), stocks[i]);
|
||||
zf := stockZf(dt_prev, dt);
|
||||
gains[i] := array("code": stocks[i], "zf": zf);
|
||||
end;
|
||||
|
||||
top50 := select * from gains
|
||||
order by ["zf"] desc
|
||||
end;
|
||||
top50 := select drange(0 to 49) * from top50 end;
|
||||
|
||||
echo "昨天(" $ dateToStr(dt) $ ")主板涨幅前50:";
|
||||
for i := 0 to length(top50) - 1 do
|
||||
begin
|
||||
echo (i + 1) $ ". " $ top50[i]["code"] $ " 涨幅:" $ top50[i]["zf"] $ "%";
|
||||
end;
|
||||
Reference in New Issue
Block a user