TDateTime
  日期类型是一种难以表达的类型,也许有的人说是用某年某月某日的表达方法不是很简单吗,但是计算机语言是无国界的,有的国家是用12/30/2010来表达2010年12月31日,有的国家则是用2010…
FormatDateTime
根据参数Format给定的格式串将参数DateTime转换成字符串类型返回 [htm]
符号 含义
C(或者c) 短日期+长时间,如果时间正好是凌晨0点整则不显示长时间部分
D(或者d) 显示日期( 1-31),如果日期是一位显示为一位
DD(或者dd) 显示日期(01-31),如果日期是一位在十位添0
DDD(或者ddd) 显示星期( Sun - Sat )比如是星期三就显示为周三
DDDD(或者dddd) 显示星期 (Sunday-Saturday),如果是星期三就显示为星期三
DDDDD(或者ddddd) 用短日期格式显示日期,形如2013-10-09
DDDDDD(或者dddddd) 用长日期格式显示日期,形如2013年10月9日
M(或者m) 显示月份(1-12)
MM(或者mm) 显示月份(01-12)
MMM(或者mmm) 显示月份(Jan-Dec)
MMMM(或者mmmm) 显示月份(January-December)
YY(或者yy) 显示年份(00-99)
YYYY(或者yyyy) 显示年份(0000-9999).
H(或者h) 显示小时( 0-23 ),如果小时是一位的显示为一位
HH(或者hh) 显示小时( 00-23),如果小时是一位的显示的时候在十位添0
N(或者n) 显示分钟 (0-59),如果分钟是一位的显示为一位
NN(或者nn) 显示分钟 (0 0 -59),如果分钟是一位的显示的时候在十位添0
S(或者s) 显示秒钟 (0-59),如果秒是一位的显示为一位
SS(或者ss) 显示秒钟 ( 0 0-59),如果秒是一位的显示的时候在十位添0
Z(或者z) 显示毫秒 (0-999),如果豪秒是一位或者两位的显示为它自己原来的位数
ZZZ(或者zzz) 显示毫秒(000-999),毫秒数不足三位的在前面添0(0 00 -999)
T 用短时间格式,形如小时:分钟
TT(或者tt) 用长时间格式,形如小时:分钟:秒
Am/pm 12小时制,上午显示am,下午显示pm
A/p 12小时制,上午显示a,下午显示p
Ampm 12小时制,上午显示上午,下午显示下午
/ 日期分割符号
: 时间分割符号
'xx'/"xx" 用引号引起的部分按原样显示
[/htm]
范例(t):

[code]
Return FormaTDateTime("C",now());//输出2011-08-08 16:27:08
Return FormaTDateTime("D其转换结果依赖运行环境的操作系统的日期时间格式,如表示星期时,有些操作系统上表示方式为“周五”,而有些操作系统上表示为“五”。
支持标量和多维矩阵的基础函数
[htm]<table><tbody><tr style="background-color: #D3D3D3; font-weight: bold;"><td>
函数名</td><td>
函数名…
Q:天软有没有半秒线周期数据?
A:有,周期设置为cy_halfs()即半秒线函数。
语句如:setsysparam(pn_cycle(),cy_halfs());
半秒线生成规则:半秒线数据由交易明细衍生而来,当交易明细中存在…
Q:怎么取历史上的股票名称?
A:使用函数StockNameEndT(StockId:String,EndT:TDateTime);
如: SZ000001在2010年1月1日的名称
[code]
  return …
Q:日期可以以日期型、报告期型以及字符串型的表示,它们之间的相互转化是怎样的
A:
TSL中采用数字来描述的日期类型,具体规则如下:整数部分表示自从1899年12月30日以来经历的天数,小数部分表示一天中均匀的分割24小时的时间所形成的时间。
例如:
0表示1899…
2014-04-21-应用专题-第三方交互02:天软和常见日期时间格式之间的转换
1、在TSL中,常见的日期格式有:与MS兼容的实数型、整数型、字符串型
2、详细说明了[strong]DateToStr/StroToDate、DateToInt/…
Q:天软的日期是什么格式的?
A:天软日期时间的存储:
天软的日期是一个实数,从1899-12-31为第1天开始算起,每天加1,这个跟Excel内部存储的日期是一样的。如果是时间的话,是以小数点…
嘉瑞特.冯.凡古纳成长型投资法
背景:
 嘉瑞特.冯.凡古纳(Garrett Van Wagoner)(以下简称凡古纳)生于1955年,是凡古纳资本管理公司(Van Wagoner Capita…
詹姆士.卡里纳中小型成长股选股法则
背景:
 詹姆士.卡里纳(James L. Callinan)是美国著名的成长型基金经理人,1987年进入普南投资公司(Putnam Investments)任职…
Q:如何将半秒线行情数据的时间戳显示出毫秒?
A:普通的datetimetostr只能显示时间点到秒,若需要显示毫秒,需要调用FormaTDateTime进行自定义格式的转换。
范例:
[code]
set…
雪拜.戴维斯长期成长投资法
背景:
 雪拜.戴维斯(Shelby Davis)是戴维斯精选顾问公司(Davis Selected Advisers)创办人,自1969年开始操作戴维斯纽约创投…
查尔士.布兰帝价值型选股法则
背景:
 查尔士.布兰帝(Charles Brandes)是证券分析之父班杰明.葛拉汉(Benjamin Graham)的传人之一,在1970年初,担任过班杰明.…
麦克.劳尔集中价值选股法则
背景:
 麦克.劳尔(Michael Lauer)是美国知名的价值型投资组合经理人,投资经历逾20年,大学时半工半读,以开出租车支付学费,1979年毕业后,因精通…
史帝芬.路佛价值型选股法则
背景:
 史帝芬.路佛(Steven C. Leuthold)是路佛威登资本管理公司(Leuthold Weeden Capital Management)的创办…
詹姆士.欧沙那希价值型选股法则I
背景:
 詹姆士.欧沙那希(James P. O'shaughnessy)是欧沙那希资本管理公司(O'shaughnessy Capital Management…
麦克.喜伟收益型选股法
背景:
 麦克.喜伟(Michael Sivy)是美国知名的投资策略分析师,过去15年来,对全球股市动向的预测绩效卓著,曾在1987年预警美国股市的大崩盘;199…
杰瑞黛.魏斯蓝筹股投资法
背景:
 杰瑞黛.魏斯是美国著名投资建议刊物【投资体质趋势】(Investment Quality Trend)的资深编辑兼发行人,【投资体质趋势】创刊于1966…
哈瑞.伯恩中大型价值选股法则
背景:
 哈瑞.伯恩(Harry Burn Ⅲ)生于1944年,是美国著名的价值型基金经理人,曾任职于Chase Investment Counsel公司,197…
戴维.凯兹相对价值型选股法则
背景:
 戴维.凯兹(David A. Katz)是美国知名的价值型投资组合经理人,以优异的成绩(summa cum laude:平均学年成绩3.8以上)毕业于联…
詹姆士.欧沙那希成长型股票筛选II
背景:
 詹姆士.欧沙那希(James P. O'Shaughnessy) 是欧沙那希资本管理公司(O'shaughnessy Capital Managemen…
汤玛士.麦克修中大型成长股选股法则
背景:
 汤玛士.麦克修(Thomas J. McHugh)是美国老牌的成长型资产管理高手,投资经历长达40年以上,曾为美国著名的皮特肯家族(Pitcairn F…
斯皮罗士.谢加拉斯成长型选股法则
背景:
 斯皮罗士.谢加拉斯(Spiros Segalas)是美国著名的老牌成长型基金经理人,1955年毕业于普林斯顿大学(Princeton Universit…
查尔斯.韩德森大型成长股选股则
背景:
 查尔斯.韩德森(Charles F. Henderson)是美国知名的成长型投资组合经理人,投资经历长达35年以上,毕业于达特茅斯学院(Dartmout…
Q:请问如何判断个股是否停牌?
A:判断个股在指定日是否停牌一般使用模型istradeday判断,详情可参考:FAQ:Q:函数istradeday判断是否交易日的规则
另外,天软提供个股停牌信息表“股票.特别提示…
威廉.达顿小型价值成长股选股法则
背景:
 威廉.达顿(William M. Dutton别名Bill Dutton)是美国著名的价值型投资人,自1987年开始管理天廓资产管理公司(Skyline…
威廉.瑞弗斯收益成长型选股法则
背景:
 威廉.瑞弗斯(William H. Reaves)是美国知名的公共事业股投资组合经理人,投资经历长达55年,1946年即在大型券商担任公用事业股分析师,…
霍华.罗斯曼审慎致富投资法
背景:
 霍华.罗斯曼(Howard Rothman)是华尔街著名的投资分析公司-远见投资顾问公司(Vision Investment Advisor, VIA)…
麦克.墨菲高科技选股策略
背景:
 麦克.墨菲(Michael Murphy)是『加州高科技股通讯报』的创办人兼编辑,哈佛大学毕业后,曾因吸毒而沦为银行抢匪,被判刑10年,1968年获得假…
肯尼斯.费雪超级强势选股法则
背景:
 肯尼斯.费雪( kenneth L. Fisher)是费雪投资公司(Fisher Investments)的创办人兼总裁,他的父亲菲利普.费雪(Phil…
麦克.喜伟成长型选股法
背景:
 麦克.喜伟(Michael Sivy)是美国知名的投资策略分析师,过去15年来,对全球股市动向的预测绩效卓著,曾在1987年预警美国股市的大崩盘;199…
詹姆士.欧沙那希成长型股票筛选I
背景:
 詹姆士.欧沙那希(James P. O'Shaughnessy) 是欧沙那希资本管理公司(O'shaughnessy Capital Managemen…
Q:怎么获取指数实时k线与黄线数据?
A:指数实时k线与黄线数据可以通过模型Index_ActuTimeHOLCAndYLData来获取,导出数据后可在excel进行绘图得到
[ul][b]定义:[/b…
Q:如何获取股票.机构持股表数据在指定日的最新数据报告期
A:由于天软的股票.机构持股(27)表数据是天软后期衍生,而非公告实时采集的,所以没有具体公布日。
而若需要知道在指定日,用户实际能获取到的最新的报告期数据是哪个,则需要根据数据公布情况进行估计。 …
常用日期时间函数
[table rsplit="$" csplit="#"]函数名#别名#备注
$Time#当前时间#
$DecodeTime#分解时间#
$[a id=200…
EncodeDate
范例(t):

date:=EncodeDate(2011,8,6);
return date;//输出:40761
参考:[ref]TDateTime[/re…
EncodeTime
范例(t):

Time1:=EncodeTime(12,35,35,100);
return time1;//输出:0.52471(12:35:35.1)
参…
TryEncodeDate
范例(t):

[code]
if TryEncodeDate(2011,12,25,date) then
return date;//输出:40902
else
return …
TryEncodeTime
范例(t):

[code]
if TryEncodeTime(12,20,30,200,time) then

return time //输出:0.51
else

retur…
DecodeDate
范例(t):

[code]
DecodeDate(inttodate(20140115),year,month,day);
return array(year,month,day );
/…
DecodeDateFully
范例(t):

[code]
Flag:=DecodeDateFully(inttodate(20140115),year,month,day,dow);
fname:=ifthen(1,'闰…
DecodeTime
范例(t):
[code]
DecodeTime(strtoTime("13:33:45.500"),hour,min,sec,msec);
return array(hou…
DayOfWeek
范例(t):

dow:=DayOfWeek(EncodeDate(2011,8,8));
return dow;//输出:2
参考:[ref]TDateTim…
Date
范例(t):

//当前的日期
Return Date();//输出41656
参考:TDateTime">TDateTime …
Time
范例(t):

Return Time();//输出0.59
参考:TDateTime">TDateTime …
Now
范例(t):

Return Now();//输出40763.59
参考:TDateTime">TDateTime …
DateToStr
范例(t):

EndT:=inttodate(20140117);
Return DateToStr(EndT); //输出 2014-01-17

参考:…
TimeToStr
范例(t):

//输入时间或者日期时间
Return timeToStr(0.5);
return timetostr(now());
参考:[ref]TDa…
DateTimeToStr
范例(t):

EndT:=now();
Return DateTimeToStr(EndT);//输出当前系统日期时间
参考:[ref]TDateTime[/r…
StrToDate
范例(t):

Return StrToDate("2010-02-04");//输出40213
参考:TDateTime">TDateTime
StrToDateDef
范例(t):

Return StrToDateDef("2010-02-30",date());//转换失败输出当前日期40763
参考:[r…
TryStrToDate
范例(t):

[code]
If TryStrToDate("2010-02-04 ",date) then
Return date;//输出40213
[/code…
StrToTime
范例(t):

Return StrToTime("15:20:34");//输出0.64
参考:TDateTime">TDateTime […
StrToTimeDef
范例(t):

[code]
time:=StrToTimeDef("15:61:34 ",time()); 
Return time; //输出当前系统时间
[/co…
TryStrToTime
范例(t):

If TryStrToTime("15:52:35",time) then
Return time;//输出0.66
参考:…
StrToDateTime
范例(t):

Return StrToDateTime("2011-08-08 16:00:16 ");//输出40763.67
参考:[re…
StrToDateTimeDef
范例(t):

[code]
Return StrToDateTimeDef("2011-08-08 16:61:16 ",now());//输出当前系统日期时间
[/co…
TryStrToDateTime
范例(t):

[code]
If TryStrToDateTime("2010-02-04 16:11:35 ",datetime) then
Return datet…
FormatDateTime
范例(t):

[code]
Return FormaTDateTime("C",now());//输出2011-08-08 16:27:08
Return FormaTDateTime("D…
DateTimeToString
范例(t):

[code]
DateTimeToString(result,'YYYY-MM-DD HH:NN:SS',now()) ;
Return result;//输出当期系统日期时…
IsInLeapYear
范例(t):

[code]
If IsInLeapYear(date) then
Return "this year is a leap year "
Else
IsPM
范例(t):

[code]
If IsPM(Time()) then
Return "is PM "
Else
Return "is AM &quot…
WeeksInYear
范例(t):

num:= WeeksInYear (Date());
Return num;//输出52
参考:TDateTime">TDateTime […
DaysInYear
范例(t):

days:= DaysInYear (Date());
Return days;//输出365
参考:TDateTime">TDateTime
DaysInMonth
范例(t):

days:= DaysInMonth (inttodate(20131201));
Return days;//输出31
参考:[ref]TDa…
Today
范例(t):

datetime:=Today();
Return DateToStr(datetime);//输出2011-08-08
参考:[ref]TDa…
Yesterday
范例(t):

Datetime:=Yesterday();
Return DateToStr(datetime);//输出2011-08-07
参考:[ref…
Tomorrow
范例(t):

Datetime:=Tomorrow();
Return DateToStr(datetime);//输出2011-08-09
参考:[ref]…
IsToday
范例(t):

[code]
Today:=today();
Aday:=today+2;
If istoday(aday) then

Return "aday is to…
IsSameDay
范例(t):

[code]
Today:=today();
Aday:=today+2;
If isSameDay(aday,today) then
Return "same…
DateOf
范例(t):



return DateOf(now()); //返回今天的日期

参考:TDateTime">TDateTime [ref]TimeOf…
TimeOf
范例(t):


[code]

return TimeOf (now()); //返回当前所处的时间点

//截取某个日期时间的时间点

EndT:=strtodatetime(&…
YearOf
范例(t):

year:=Yearof(strToDate('2010-08-08'));
return year;
//输出: 2010
参考:[ref…
MonthOf
范例(t):

month:=Monthof(strToDate('2010-08-08'));
return month;//输出: 8
参考:[ref]T…
DayOf
范例(t):

[code]
hour:=dayof(strtodatetime('2011-08-08 11:22:06'));
return hour; //输出: 8
[/code…
HourOf
范例(t):

[code]
hour:=hourof(strtodatetime('2011-08-08 11:22:06'));
return hour; //输出: 11
[/co…
MinuteOf
范例(t):

[code]
minute:=minuteof(strtodatetime('2011-08-08 11:22:06'));
return minute;//输出: 22 …
SecondOf
范例(t):

[code]
second:=secondof(strtodatetime('2011-08-08 11:22:06'));
return second;//输出: 6
MilliSecondOf
范例(t):

[code]
millisecond:=Millisecondof(StrToDateTime('2011-08-08 11:22:06.990'));
return mil…
StartOfTheYear
范例(t):

[code]
dTime:=StartOfTheYear(StrToDateTime('2011-08-08 11:22:06.990'));
return dateTime…
EndOfTheYear
范例(t):

[code]
year:=EndOfTheYear(StrToDateTime('2011-08-08 11:22:06.990'));
return dateTimeToS…
StartOfAYear
范例(t):

year:=StartOfAYear(2011);
return datetimetostr(year); //输出: 2011-01-01
EndOfAYear
范例(t):

[code]
year:=EndOfAYear(2011);
return datetimetostr(year); //输出: 2011-12-31 23:59:59
StartOfTheMonth
范例(t):

[code]
year:=StartOfTheMonth(strtodatetime('2011-08-08 12:48:22.990'));
return datetime…
EndOfTheMonth
范例(t):

[code]
year:=EndOfTheMonth(strtodatetime('2011-08-08 12:48:22.990'));
return DatetimeTo…
StartOfAMonth
范例(t):

[code]
tdate:=StartOfAMonth(2011,08);
return dateTimeToStr(tdate); //输出: 2011-08-01
[…
EndOfAMonth
范例(t):

[code]
Ttime:=EndOfAMonth(2011,08);
return datetimetostr(Ttime); //输出: 2011-08-31 23:5…
StartOfTheWeek
范例(t):

[code]
year:=StartOfTheWeek(strtodatetime('2011-08-07'));
return datetimetostr(year); /…
EndOfTheWeek
范例(t):

[code]
year:=EndOfTheWeek(strtodatetime('2011-08-01'));
return datetimetostr(year); //输…
StartOfAWeek
范例(t):
范例一:
[code]
//取当年的第一个完整周
year:=StartOfAWeek(2011,1,1);
return datetimetostr(year);//输出:…
EndOfAWeek
范例(t):
范例一:
[code]
year:=EndOfAWeek(2011,1,7);
return datetimetostr(year); //输出: 2011-01-09 23…
StartOfTheDay
范例(t):

[code]
year:=StartOfTheDay(strtodatetime('2011-08-08 23:59:59'));
return datetimetostr(…
EndOfTheDay
范例(t):

[code]
year:=EndOfTheDay(strtodatetime('2011-08-08 01:01:10'));
return datetimetostr(ye…
StartOfADay
范例(t):

[code]
year:=StartofADay(2011,8,8);
return datetimetostr(year); //输出: 2011-08-08
[/co…
EndOfADay
范例(t):

[code]
year:=EndOfADay(2015,1,5);
return datetimetostr(year); //输出: 2015-01-05 23:59:59…
MonthOfTheYear
范例(t):

month:=MonthOfTheYear(strtodate('2011-08-08'));
return month; //输出: 8
参…
WeekOfTheYear
范例(t):

week:=WeekOfTheYear(strtodate('2011-01-03'));
return week; //输出: 1
参考:[…
DayOfTheYear
范例(t):

d:=DayOfTheYear(strtodate('2011-01-03'));
return d ; //输出: 3
参考:[ref]TDa…
HourOfTheYear
范例(t):

[code]
hour:=HourOfTheYear(strtodatetime('2011-01-03 10:00:00'));
return hour; //输出: 58…
MinuteOfTheYear
范例(t):

[code]
minute:=MinuteOfTheYear(strtodatetime('2011-01-03 10:00:00'));
return minute; //输…
SecondOfTheYear
范例(t):

[code]
second:=SecondOfTheYear(strtodatetime('2011-01-03'));
return second; //输出: 20880…
MilliSecondOfTheYear
范例(t):

[code]
millisecond:=MilliSecondOfTheYear(strtodatetime('2011-01-03'));
return millisecon…
WeekOfTheMonth
定义1:WeekOfTheMonth(AValue: TDateTime): Integer;
说明:返回由参数AValue指定的时间是处于当月的第几个周。
注意:使用了ISO8601标准,这意味…
DayOfTheMonth
范例(t):

day:=DayOfTheMonth(strtodatetime('2011-01-22'));
return day; //输出: 22
参考…
HourOfTheMonth
范例(t):

[code]
hour:=HourOfTheMonth(strtodatetime('2011-01-22 10:00:00'));
return hour;//输出: 51…
MinuteOfTheMonth
范例(t):

[code]
minute:=MinuteOfTheMonth(strtodatetime('2011-01-22 10:00:00'));
return minute; //…
SecondOfTheMonth
范例(t):

[code]
second:=SecondOfTheMonth(strtodatetime('2011-01-22 10:00:00'));
return second; //…
MilliSecondOfTheMonth
范例(t):

[code]
millisecond:=MilliSecondOfTheMonth(strtodatetime('2011-01-22 10:00:00'));
return …
DayOfTheWeek
范例(t):
[code]
Dayofweek:=DayOfTheWeek(strtodatetime('2011-01-03'));
return dayofweek;
//输出: 1 …
HourOfTheWeek
范例(t):

[code]
hour:=HourOfTheWeek(strtodatetime('2011-01-05 10:00:00'));
return hour; //输出: 58…
MinuteOfTheWeek
范例(t):

[code]
minute:=MinuteOfTheWeek(strtodatetime('2011-01-05 10:00:00'));
return minute; //输…
SecondOfTheWeek
范例(t):

[code]
second:=SecondOfTheWeek(strtodatetime('2011-01-05 10:00:00'));
return second; //输…
MilliSecondOfTheWeek
范例(t):

[code]
millisecond:=MilliSecondOfTheWeek(strtodatetime('2011-01-05 10:00:00'));
return m…
HourOfTheDay
范例(t):

[code]
hour:=HourOfTheDay(strtodatetime('2011-01-05 23:22:22'));
return hour;//输出: 23
MinuteOfTheDay
范例(t):

[code]
minute:=MinuteOfTheDay(strtodatetime('2011-01-05 01:22:22'));
return minute; //输出…
SecondOfTheDay
范例(t):

[code]
second:=SecondOfTheDay(strtodatetime('2011-01-05 01:30:01'));
return second; //输出…
MilliSecondOfTheDay
范例(t):

[code]
millisecond:=MilliSecondOfTheDay(strtodatetime('2011-01-05 01:30:01'));
return mi…
MinuteOfTheHour
范例(t):

[code]
minute:=MinuteOfTheHour(strtodatetime('2011-01-05 01:30:01'));
return minute; //输…
SecondOfTheHour
范例(t):

[code]
second:=SecondOfTheHour(strtodatetime('2011-01-05 01:30:01'));
return second; //输…
MilliSecondOfTheHour
范例(t):

[code]
millisecond:=MilliSecondOfTheHour(strtodatetime('2011-01-05 01:30:01'));
return m…
SecondOfTheMinute
范例(t):

[code]
second:=SecondOfTheMinute(strtodatetime('2011-01-05 01:30:01'));
return second; /…
MilliSecondofTheMinute
范例(t):

[code]
millisecond:=MilliSecondofTheMinute(strtodatetime('2011-01-05 01:30:01'));
return…
MilliSecondOfTheSecond
范例(t):

[code]
millisecond:=MilliSecondOfTheSecond(strtodatetime('2011-01-05 01:30:01.990'));  …
WithinPastYears
范例(t):
范例一:
[code]

//2010年1月5日至2013年1月4日之间,不足3年,因此,判断为2年内
  flag:=WithinPastYears(strtodateti…
WithinPastMonths
范例(t):
范例一:
[code]
//2011年1月5日到2011年7月6日的天数是182,而天数必须大于182.62(6*30.4375),才能达到6个月,所以,1月5日还属于7月6日前推…
WithinPastWeeks
范例(t):
范例一:
[code]
//2011年1月1日至2011年1月28日之间的天数为27天,不足28天(4*7),所以仍在3周内
flag:=WithinPastWeeks(strt…
WithinPastDays
范例(t):
范例一:
[code]
flag:=WithinPastDays(strtodate('2011-01-01'),strtodate('2011-01-11'),10);
ret…
WithinPastHours
范例(t):
范例一:
[code]
//不足11个小时
flag:=WithinPastHours(strtodatetime('2011-01-01 00:00:00'),strtodat…
WithinPastMinutes
范例(t):


[code]
flag:=WithinPastMinutes(strtodatetime('2011-01-01 10:00:00'),strtodatetime('2011…
WithinPastSeconds
范例(t):
范例一:
[code]
flag:=WithinPastSeconds(strtodatetime('2011-01-01 10:00:00'),strtodatetime('20…
WithinPastMilliSeconds
范例(t):

[code]
ANow:=strtodatetime('2011-01-01 10:00:00.100');
AThen:=strtodatetime('2011-01-01 …
YearsBetween
范例(t):

[code]
years:=YearsBetween(strtodatetime('2009-01-01 00:00:00'),strtodatetime('2011-01-01…
MonthsBetween
范例(t):

[code]
months:=MonthsBetween(strtodatetime('2011-05-01'),strtodatetime('2011-08-01'));
r…
WeeksBetween
范例(t):

[code]
weeks:=WeeksBetween(strtodatetime('2011-05-01'),strtodatetime('2011-08-01'));
ret…
DaysBetween
范例(t):
范例一:
[code]
days:=DaysBetween(strtodate('2011-05-01'),strtodate('2011-08-01'));
return da…
HoursBetween
范例(t):

[code]
Hours:=HoursBetween(strtodatetime('2011-08-01 00:00:00'),strtodatetime('2011-08-01…
MinutesBetween
范例(t):

[code]
minutes:=MinutesBetween(strtodatetime('2011-08-01 00:00:00'),strtodatetime('2011-0…
SecondsBetween
范例(t):

[code]
seconds:=SecondsBetween(strtodatetime('2011-08-01 00:00:00'),strtodatetime('2011-0…
MilliSecondsBetween
范例(t):

[code]
BegT:=strtodatetime('2011-08-01 00:00:00');
EndT:=strtodatetime('2011-08-01 12:00…
YearSpan
范例(t):

[code]
years:=YearSpan(strtodatetime('2010-08-01 00:00:00'),strtodatetime('2012-08-01 12:…
MonthSpan
范例(t):

[code]
months:=MonthSpan(strtodatetime('2010-08-01 00:00:00'),strtodatetime('2012-08-01 1…
WeekSpan
范例(t):

[code]
BegT:=strtodatetime('2010-08-01 00:00:00');
EndT:=strtodatetime ('2012-08-01 12:0…
DaySpan
范例(t):

[code]
BegT:=strtodatetime('2010-08-01 00:00:00');
EndT:=strtodatetime('2012-08-01 12:00…
HourSpan
范例(t):

[code]
hours:=HourSpan(strtodatetime('2010-08-01 00:00:00'),strtodatetime('2012-08-01 12:…
MinuteSpan
范例(t):

[code]
BegT:=strtodatetime('2010-08-01 00:00:00');
EndT:=strtodatetime('2012-08-01 12:00…
SecondSpan
范例(t):

[code]
BegT:=strtodatetime('2010-08-01 00:00:00');
EndT:=strtodatetime('2012-08-01 12:00…
MilliSecondSpan
范例(t):

[code]
BegT:=strtodatetime('2010-08-01 00:00:00');
EndT:=strtodatetime('2012-08-01 12:00…
IncYear
范例(t):

[code]
incyears:=IncYear(strtodatetime('2010-08-01'),10);
return datetostr(incyears); //…
IncMonth
范例(t):

[code]
incmonths:=IncMonth(strtodatetime('2010-08-01'),2);
return datetostr(incmonths); …
IncWeek
范例(t):

[code]
incweeks:=IncWeek(strtodatetime('2010-08-01'),1);
return datetostr(incweeks); //输…
IncDay
范例(t):

[code]
incdays:=IncDay(strtodatetime('2010-08-01'),10);
return datetostr(incdays); //输出:…
IncHour
范例(t):

[code]
inchours:=IncHour(strtodatetime('2010-08-01 00:01:01'),10);
return datetimetostr(…
IncMinute
范例(t):

[code]
incminutes:=IncMinute(strtodatetime('2010-08-01 00:01:01'),50);
return datetimeto…
IncSecond
范例(t):

[code]
incseconds:=IncSecond(strtodatetime('2010-08-01 00:01:01'),50);
return datetimeto…
IncMilliSecond
范例(t):

[code]
incmilliseconds:=IncMilliSecond(strtodatetime('2010-08-01 00:01:01.950'),50);
ret…
EncodeDateTime
范例(t):

[code]
timeset:=EncodeDateTime(2011,08,08,09,32,45,990);
return datetimetostr(timeset);…
DecodeDateTime
范例(t):

[code]
EndT:= strtodatetime('2011-08-08 12:09:10.990');
DecodeDateTime(EndT,year,month,d…
EncodeDateWeek
范例(t):

[code]
//一个自然周至少要有4天属于该年的日期,这一周才属于这年。
//1月1日和1月2日所属周只有2天处于2011年,所以,这周属于2010年,2011年的第一周从2…
DecodeDateWeek
范例(t):

[code]
DecodeDateWeek(strtodatetime('2011-08-08'),year,weekofyear,dayofweek);
return arr…
DecodeDateDay
范例(t):

[code]
DecodeDateDay(strtodatetime('2011-08-08'),year,dayofyear);
return array(year,dayo…
EncodeDateMonthWeek
范例(t):

[code]
monthweek:=EncodeDateMonthWeek(2011,8,2,1);
return datetimetostr(monthweek);//输出:…
DecodeDateMonthWeek
范例(t):

[code]
DecodeDateMonthWeek(strtoDatetime("2011-08-10"),year,month,weekofMonth,d…
TryEncodeDateTime
范例(t):

[code]
Flag:=TryEncodeDateTime(2011,8,10,10,01,01,999,Atime);
return array(flag,datetime…
TryEncodeDateWeek
范例(t):

[code]
Flag:=TryEncodeDateWeek(2011,1,Atime,1);
return array(flag,datetimetostr(Atime));…
TryEncodeDateDay
范例(t):

[code]
Flag:=TryEncodeDateDay(2011,1,Atime);
returnarray(flag,datetimetostr(Atime));//输出…
TryEncodeDateMonthWeek
范例(t):

[code]
Flag:=TryEncodeDateMonthWeek(2011,1,1,1,Atime);
returnarray(flag,datetimetostr(At…
RecodeYear
范例(t):
范例一:
[code]
newTime:=RecodeYear(strtoDatetime("2010-08-01"),2009);
return datetimetostr(n…
RecodeMonth
范例(t):
范例一:
[code]
try
newTime:=RecodeMonth(strtodatetime("2011-08-10"),10);
newTime:=datetimet…
RecodeDay
范例(t):
范例一:
[code]
try

newTime:=RecodeDay(strtodatetime("2011-08-10"),1);

newTime:=datetost…
RecodeHour
范例(t):

[code]
newTime:=RecodeHour(strtodatetime("2011-08-10 12:12:12"),1);
return dat…
RecodeMinute
范例(t):

[code]
newTime:= RecodeMinute (strtodatetime("2011-08-10 12:12:12"),9);
return…
RecodeSecond
范例(t):

[code]
newTime:=RecodeSecond(strtodatetime("2011-08-10 12:12:12"),9);
return d…
RecodeMilliSecond
范例(t):

[code]
newTime:=RecodeMilliSecond(strtodatetime("2011-08-10 12:12:12.999"),100)…
RecodeDate
范例(t):

[code]
newTime:=RecodeDate(strtodatetime("2011-08-10 12:12:12"),2010,8,9);
ret…
RecodeTime
范例(t):

[code]
newTime:=RecodeTime(strtodatetime("2011-08-10 12:12:12.999"),10,8,9,100)…
RecodeDateTime
范例(t):

[code]
newTime:=RecodeDateTime(strtodatetime("2011-08-10 12:12:12.999"),2010,8,…
TryRecodeDateTime
范例(t):

[code]
TryRecodeDateTime(strtodatetime("2011-08-10 12:12:12.999"),2010,8,10,10,…
CompareDateTime
范例(t):

[code]
result:=CompareDateTime(strtodatetime("2011-08-10"),strtodatetime("…
SameDateTime
范例(t):

[code]
flag:=SameDateTime(strtodatetime("2011-08-10"),strtodatetime("2011-…
CompareDate
范例(t):

[code]
result:=CompareDate(strtodatetime("2011-08-10"),strtodatetime("2011…
SameDate
范例(t):

[code]
flag:=SameDate(strtodatetime("2011-08-1001:00:00"),strtodatetime("2…
CompareTime
范例(t):

[code]
result:=CompareTime(strtodatetime("2011-08-10 01:00:00"),strtodatetime(&…
SameTime
范例(t):

[code]
result:=SameTime(strtodatetime("2011-08-10 01:00:00"),strtodatetime(&quo…
NthDayOfWeek
范例(t):

[code]
EndT:=strtodatetime("2014-01-06");
weekNum:=NthDayOfWeek(EndT);
WOFM:=…
DecodeDayOfWeekInMonth
范例(t):

[code]
EndT:=strtodatetime("2011-08-10 12:10:09");
DecodeDayOfWeekInMonth(endt…
EncodeDayOfWeekInMonth
范例(t):

[code]
//2013年10月1日是周二,1日至6日不属于这个月的周,从7日(周一)所属周开始算起
return EncodeDayOfWeekInMonth(2013,1…
TryEncodeDayOfWeekInMonth
范例(t):

[code]
TryEncodeDayOfWeekInMonth(2013,10,2,1,newtime);
return datetimetostr(newtime) ;
DateTimeToJulianDate
范例(t):

[code]
return DateTimeToJulianDate(strtodatetime('2014-01-01 10:00:00'));
//输出2456658.91…
JulianDateToDateTime
范例(t):

[code]
A := JulianDatetoDateTime(2456658.91667);
return DatetimetoStr(A); //输出2014-01…
TryJulianDateToDateTime
范例(t):

[code]
flag:=TryJulianDateToDateTime(2456658.91667,T);
if flag then

return Datetimet…
DateTimeToModifiedJulianDate
范例(t):

[code]
a := DateTimeToModifiedJulianDate(strtodatetime('2014-01-01 10:00:00'));
return a…
ModifiedJulianDateToDateTime
范例(t):

[code]
t := ModifiedJulianDateToDateTime(56658.41667);
return datetimetostr(t); //输出2014…
TryModifiedJulianDateToDateTime
范例(t):

[code]
flag:=TryModifiedJulianDateToDateTime(56658.41667,t);
if flag then

return date…
DateTimeToUnix
范例(t):

[code]
return DateTimeToUnix(strtodatetime('2014-01-01 10:00:00'));
//输出1388570400
[/co…
UnixToDateTime
范例(t):

[code]
T:=UnixToDateTime(1388570400);
return datetimetostr(T);
//输出2014-01-01 10:00:00 …
文件名以及目录名相关处理函数
文件相关处理函数包括了对文件名、目录以及扩展名等等相关处理函数,以及文件时间以及和TDateTime之间的转换函数。
[table rsplit="$&qu…
Q:主力合约的不同算法实现
2024-6-18更新说明:
特别说明:通过“昨持仓”判断期货主力、次主力合约详情参考:FAQ:2025-08-25-数据更新-期货数据009:关于天软期货主力系列升级的说明(更新版)
杰克.布拉希稳定成长选股法则
背景:
 杰克.布拉希(Jack Brush)是美国知名的股市数量分析大师,毕业于美国空军学院(United States Air Force Academy),…
罗伯.巴卡雷纳成长型投资法
背景:
 罗伯.巴卡雷纳 (Robert Bacarella) 1971年毕业于盛乔瑟夫学院( St. Joseph's College),取得会计及财务双主修学…
Q:如何计算公募基金相对其业绩比较基准的超额收益数据
A:可封装函数FundExtraZF,用函数FundBenchmarkReturn4计算出业绩基准指定日收益率得到超额收益,具体实现如下:
取数代码:
先封装一…
Q:如何将用户指标添加到四大数据专家中
A:
 用户指标(即用户函数)若要添加到四大专家的指标选项中,用户指标的函数必须要与特定的系统参数相关,以及其函数属性的设置要勾选相关的特性,具体如下表所示:
[title1]不同专家需要与不同…
柏顿.墨基尔成功选股法则
背景:
 柏顿.墨基尔(Burton G. Malkiel)是普林斯顿大学(Princeton University)华友银行的讲座教授(Chemical Ban…
彼得.林区草根调查选股法则
背景:
 彼得.林区(Peter Lynch)生于1944年,1965年进入富达管理研究公司(Fidelity Management & Research Com…
约翰.奈夫低本益比投资法
背景:
 约翰.奈夫(John Neff)生于1931年,1955年进入克利夫兰国民市银行工作,1958年成为信托部门的证券分析主管,1963年进入威灵顿管理公司…
约翰.奈夫低知名度成长股选股法则
背景:
 约翰.奈夫(John Neff)生于1931年,1955年进入克利夫兰国民市银行工作,1958年成为信托部门的证券分析主管,1963年进入威灵顿管理公司…
马丁·兹威格选股法
投资程序:
第一部分:投资哲学
 在股票投资策略中,主要有价值型与成长型两种类别。价值投资策略倾向于寻找被市场忽视或价值被低估的公司,成长型投资则主要关注那些收…
麦克.贝利2-2-2选股法则
背景:
 麦克.贝利(Michael Berry)是亚利桑那大学数量分析博士(PhD in quantitative analysis from Arizona …
李.古柏中小型成长股选股法则
背景:
 李.古柏(Lee Kopp)是美国知名的成长型投资组合经理人(Portfolio Manager),投资经历长达40年,1956年以优异的成绩毕业于明尼…
威廉.纳葛维兹小型价值股投资法则
背景:
 威廉.纳葛维兹(William J. Nasgovitz)是美国著名的价值型基金经理人,投资经历长达33年以上,1966年毕业于威斯康辛大学麦迪逊分校(…
惠特尼.乔治小型价值股投资法则
背景:
 惠特尼.乔治(Whitney George)是美国著名的基金经理人,投资经历长达22年以上,毕业于三一学院(Trinity College),曾任职于多…
阿梅特.欧卡默斯价值型集中投资法则
背景:
 阿梅特.欧卡默斯(Ahmet Okumus)1969年出生于土耳其的伊斯坦堡,16岁时就对于土耳其股市产生兴趣,1989年因求学需要移民至美国,就读于圣…
戴维.卓曼反向操作价值型选股法则
背景:
 戴维.卓曼(David Dreman)是美国知名的价值型基金经理人,他所管理的史卡德卓曼高报酬权益基金(Scudder Dreman High Retu…
詹姆士.欧斯拉格成长型投资法
背景:
 欧斯拉格(James D. Oelschlager)是美国著名的成长型基金经理人,投资经历长达30年以上,1967年毕业于西北大学,1969年至1985…
史考特.布雷克价值选股投资法则
背景:
 史考特˙布雷克(Scott M. Black)是美国知名的价值型投资经理人(Portfolio Manager),投资经历长达27年,曾任职于全录公司(…
葛廉.毕克斯达夫中大型成长股选股法则
背景:
 葛廉.毕克斯达夫(Glen E. Bickerstaff)是美国知名的成长型基金经理人,投资经历20年以上,曾任太平洋世纪顾问公司(Pacific Ce…
詹姆士.赫瑟相对价值成长选股法则
背景:
 詹姆士.赫瑟(James G. Hesser)是美国知名的价值型投资经理人(Portfolio Manager),投资经历长达25年,毕业于莱德大学(R…
戴维.波伦价值型系统评价法则
背景:
 戴维.波伦(David M. Polen)是美国知名的价值型投资组合经理人,投资经历长达35年,原本担任股票经纪人,也是美国第一批获得合格财务规划师(C…
理查德&马文价值导向选股法则
背景:
 理查德.柏奇渥(Richard Buchwald)与马文.克莱恩(Marvin Kline)均为财务分析师(Chartered Financial An…
考夫曼基金新上市股投资法则
背景:
 考夫曼基金是美国著名以投资新上市公司为主的基金,1986年,罗伦斯.奥瑞安(Lawrence Auriana)及汉斯.乌许(Hans Utsch)自创始…
吉姆.史莱特祖鲁原则投资法
背景:
 吉姆.史莱特(Jim Slater)是英国知名的成长型投资大师,投资经历长达37年,1960年代即取得会计师资格,为他所服务的礼兰公司(Leyland)…
ABC股东权益回报率
选股算法:
ABC股东权益回报率(简称:ROE策略):
1、最近12个月的股东权益回报率超过行业同期平均水平的1.5倍
2、过去 3 年的每一年股东权益回报率均…
大师策略
策略概览
说明:
 1.“结果展示函数”是指用户通过该模型可立即得到该策略一段时间内的组合收益等数据,其数据来源于天软对策略回测的缓存数据,非实时计算过程结果。…
班杰明.葛拉汉防御价值型投资法
背景:
 班杰明.葛拉汉是华尔街公认的证券分析之父,1894年生于伦敦,1895年举家迁居纽约,9岁时父亲过世,幼年生活困苦,1914年毕业于哥伦比亚大学,进入证…
乔治.麦可利斯权益报酬投资法
背景:
 乔治.麦可利斯(George Michaelis )是资源资本公司(Source Capital)的前任基金经理人,及其母公司第一太平洋顾问公司(Fir…
威廉.米勒中心价值成长投资法
背景:
 威廉.米勒(William H. Miller)是美国传奇性的基金经理人,毕业于华盛顿李大学(Washington & Lee University)经…
苏珊.史卡田妃小型价值股选股法则
背景:
 苏珊.史卡田妃(Susan I. Schottenfeld)是美国著名的价值型基金经理人,毕业于宾州大学国际关系及经济系,曾任职于摩根史坦利公司(Mro…
约翰.罗杰士中小型价值成长选股法则
背景:
 约翰.罗杰士(John Rogers)是美国知名的基金经理人,投资经历长达21年,毕业于普林斯顿大学(Princeton University)经济系,…
汤玛士.贝利微型成长股投资法则
背景:
 汤玛士.贝利(Thomas Barry Ⅲ)是美国知名的成长型投资大师,投资经历长达30年,1967年毕业于爱荷华大学(University of Io…
德伍.却斯大型成长动能选股法则
背景:
 德伍.却斯(Derwood S. Chase Jr.)是美国知名的成长型投资大师,投资经历长达48年,毕业于维吉尼亚大学(University of V…
理查德.崔赫斯积极成长动能型选股法则
背景:
 理查德.崔赫斯(Richard Driehaus)是美国知名的动能型投资组合经理人(Portfolio Manager),投资经历长达32年,1968至…
贾布利.瓦森营收成长动能选股法则
背景:
 贾布利.瓦森(Gabriel Watson)是美国知名的动能型投资组合经理人(Portfolio Manager),毕业于圣地亚哥州立大学(San Di…
贾布利.瓦森成长动能型机械式选股法则
背景:
 贾布利.瓦森(Gabriel Watson)是美国知名的动能型投资组合经理人(Portfolio Manager),毕业于圣地亚哥州立大学(San Di…
Q:有夜盘数据时,如何确定当前时点的数据属于哪个交易日?
A:由于交易时间段的不一致,要通用各大证券类型,可根据一般白盘截止时间进行划分推算。
比如,一般国内证券会在下午4点前收盘,晚盘在晚上8点后开盘,考虑到港股可能是在4点左右,我们可以将白盘截止时间设…
班杰明.葛拉汉企业主投资法
背景:
 班杰明.葛拉汉是华尔街公认的证券分析之父,1894年生于伦敦,1895年举家迁居纽约,9岁时父亲过世,幼年生活困苦,1914年毕业于哥伦比亚大学,进入证…
华伦.巴菲特企业投资法则
背景:
 华伦.巴菲特(Warren E. Buffett)是全世界有史以来,靠股票赚最多钱的人,1930年8月30日生于内布拉斯加州(Nebraska)的奥玛哈…
福斯特.佛莱斯积极成长选股策略
背景:
 福斯特.佛莱斯(Foster Friess) 1940年生于美国威斯康星州莱斯湖畔,1974年与Lynn Friess共同创立佛莱斯联合公司(Fries…
麦克.普莱斯低估价值投资法
背景:
 麦克.普莱斯(Michael Price) 是美国价值型基金经理人中的传奇人物,1975年加入海涅证券(Heine Securities),跟着海涅(M…
Q:在多因子框架中如何传递自定义变量给因子公式模型
A:
 在获取指定日期指标值(多因子)模型TSMF_GetValueByEndT中存在spc_参数可以传递指定变量给因子公式。
 以spc_:=array('变量名':值)的形式传入,
 …
理查德.考克支持赢家操作法则
背景:
 理查德.考克(Richard Koch)是英国知名的企业家、创投专家及作家,年轻时创立英国著名的创投公司-LEK Partnership and Str…
威廉.欧尼尔CANSLIM投资法则
背景:
 威廉.欧尼尔(William J. O'Neil)是美国知名的成长型投资大师,投资经历长达40年,毕业于南美以美大学(Southern Methodis…
伊伯森小型股投资选股准则
背景:
 根据芝加哥的伊伯森顾问公司(Ibboston Associates)对投资报酬率的研究,自1926年至1998年,以每二十年为一计算区间,美国股票投资报…
罗伯.加迪纳小型成长股选股法则
选股模型:
定义:XX_03(BkName:Str,EndT:TDateTime,b1,b2,b3,b4,b5:Boolean,P…
安东尼.贾利亚反向操作选股投资法则
背景:
 反向思考(Contrary Thinking)是股市流传已久的古老智慧,但一直只能以谚语式的层次,提供投资者模糊的操作概念,因为市场是否处于极端乐观或悲…
杰若米.道森长期成长投资法
背景:
 杰若米.道森(Jerome L. Dodson)是巴纳赛斯基金(Parnassus Fund)的创始人兼经理人,生于1943年,毕业于加州大学柏克莱分校…
罗兰.怀李吉价值成长投资选股法则
背景:
 罗兰.怀李吉(Roland Whitridge)生于1938年,在1984年接掌戴维.包布森(David L. Babson & Co.)的包布森价值基…
马克.约克奇成长型投资法
背景:
 马克.约克奇(Mark L. Yockey )是艺匠合伙有限公司(Artisan Partners Limited Partnership)的合伙人,并…
柯林.麦克连成长价值优势投资法则
背景:
 柯林.麦克连(Colin McLean)是英国知名的价值型投资大师,投资经历长达25年,毕业于英国格拉斯哥大学经济统计系,曾在FS保险公司(FS Ass…
Q:如何在分钟线中高效地加入昨持仓量?
场景描述:在取到的高频的行情数据表中,需要添加昨日的持仓量
测试数据源:1分钟线的带夜盘的期货合约行情数据
[code]
se…
tradeDays
范例(t):
范例一:
[code]
setsysparam(pn_stock(),'SZ000002');
beg_date := inttodate(20100101);
end_dat…
FirstDay
范例(t):
[code]
setsysparam(pn_stock(),'SZ000002');
//获得系统品种的第一个交易日
Return firstday();//33240(1991…
LastDay
范例(t):
[code]
//获取某只股票的最后一个交易日。
setsysparam(pn_stock(),'SZ000002');
return lastday();//40794 (20…
SpecDate
范例(t):
[code]
setsysparam(pn_stock(),'SZ000002');
  setsysparam(pn_date(), inttodate(20110909));…
Word常量函数
  TSL语言已经以函数的方式支持Word的绝大多数常量,用户可以函数的方式来使用这些常量,例如wdBlue这个颜色常量可以以wdBlue()的方式来访问。
  Word的常量主要应用在Wo…
Q:如何获取期权主力平值合约行情数据?
A:通过模型OptionZLId3获取指定日期权主力平值合约后,再获取对应的行情即可。
实现范例
范例01:获取指定品…
StockZf8
算法:1、开放式基金:
   区间无分红:区间净值增长率(%)=(截止日净值-开始日昨净值 )/开始日昨净值

   区间有分红:区间净值增长率(%)=(1+拆分前的净值增长率)*(…
RepoZf
算法:回购收益率=成交价/年化天数*实际占用天数
   注意:1、回购成交价为年收益率;
      2、由于回购有期限限制,若begt与endt间隔天数大于期限,到期后滚动购买…
DateTimeToString
在不同操作系统中,返回的日期格式会有所差异,差异同FormaTDateTime,FAQ:FormaTDateTime
Q:如何在一秒多笔的交易明细时间上加上毫秒标签
A:交易明细中关于时间的精度说明
由于目前天软的交易明细在存储时,对于时间只记录到了秒,没有记录到毫秒。
因此导致一秒多笔记录的品种(如期货期权)的交易明细中会存…
Q:如何快速实现多个证券的某个指标的加总
A:第一步:下载下面附件,在天软客户端中导入函数TSDN_SumOfStocks到账号中,保存为用户函数。
[attachment id=39202][/attac…
单元中的类-应用实例
现有日期相关单元TD_DateUnit,单元中包含类TD_DateClass、IntDate、StrDate。
[code]
Unit TD_DateUnit;
Interface
Type …
其他
[table rsplit="$" csplit="#"]函数名#别名#备注
$fp_Integer#Integer类型#
$[a id=327…