- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
博雅语言教材.doc
博雅语言教材
博雅语言教材 1
Boya说明 1
变量、数组与序列变量 1
系统关键词、注释和说明 2
输入数据 3
运算符、表达式和赋值 5
控制语句 6
系统函数 7
子程序 8
隐含执行过程和自控循环 9
DLL方式 9
举例 10
附录 多周期共振公式代码 27
Boya说明
Boya语言是在C语言上基础上发展而来。虽然不包括C语言的全集,但是在和金融证券的结合上有所扩充,除了具有速度快捷,效率高等优点外,还有增加了容易上手,简单易学的特点。熟悉C语言的朋友,可以直接使用。
变量、数组与序列变量
所谓的变量,就是在内存中指定一个空间并命名,以便使用。根据计数范围的不同,变量有很多种,比如字符型,整形,浮点型,布尔类型等。Boya语言基本延用C语言的变量声明方法,列举如下:
char --- 字符型
byte --- 无符号字符型
int---整形
DWORD --- 无符号整形
float --- 浮点型
BOOL --- 布尔型
如果我们需要一个浮点型变量A,如下声明即可:
float A;
如果想声明多个浮点型变量,下面的语句也行:
float A,B,C;
声明一个变量的时候,可以赋初值,比如:
float A=1,B=2,C=3;
注意一句话的结尾都是用‘;’结束。
所谓的数组,就是一种变量的组合,这组数公用一个名字,用下标区分它们在里面的位置。声明的方式和变量类似,如下所示:
float A[100];
这就声明了100个浮点数类型的变量,也就是一个数组,使用过程中,A[0]代表数组中的第1个数值,A[2]代表第三个,注意,Boya语言是从0开始计数的。
金融数据有他自己的特点,它们都是时间序列数据,无论是1分钟,5分钟还是日线等,都是一个时间序列的数据,这种数据用的很多,我们根据金融数据的特点,隐含声明一种数组,叫“序列变量”,如果不加声明就是用的变量,都视为序列变量。
序列变量是一种特殊的数组,他的长度就是该分析周期数据的长度,可以用系统的相应关键词获得。公式隐含周期的序列长度的关键词是“数据长度”。序列变量既然是一个数组,当然,下标是可以使用的。比如
A = (open+close+high+low)/4;
A[6]就可以作为一个变量使用,可以运算也可以被赋值。这在自控循环的模式里面经常被用到。当然,非自动循环也可以使用,代替后面讲到的ref函数,A[当前位置-5]和ref(A,5)是等效的。
如果A变量没有声明,直接拿来使用,则系统隐含声明成序列变量。比如:
A = (open+close+high+low)/4;
那么,A就是一个序列变量了。
变量的命名必须以字符开始,因为空格,TAB是语言的分隔符,所以也不能包含,当然,运算符也不能在其中,下划线倒是可以的。为了节省资源,Boya规定变量名称不能超过8字符。
系统关键词、注释和说明
系统的关键词是系统留给自己使用的词。关键词比较多,比如各种输入数据,各种数据长度,执行的位置等等,给变量其名的时候,要避开他们。Boya的注释和C完全一样,单行注释用//实现,多行用/* */实现。如图:
输入数据
输入数据是金融数据的一个特殊内容。输入的数据包括很多,在公式平台的左下角可以选择,如下图。可以直接点右键引入。
除了报价等数据外,输入数据都可以当成一个序列变量对待,只是不能被赋值。输入数据都不能被赋值。
我们的服务器上,每个周期都保存有很多投资家自己统计的特殊数据,这些数据对于做好交易方案关系重大,也可以直接使用。如下图:
运算符、表达式和赋值
Boya的运算符和C一致,主要有以下几种:
数学运算符:+、-、*、/
比较运算符:、=、、=、==、!=
逻辑运算符: (或者and)、|| (或者or)
各种运算符的优先级别也和C一致。
表达式是由关键字、运算符、各种变量和常量组成的式子。比如 (open+close)/2 就是一个表达式。
表达式的结果一般要么用来做判断,要不会传递给一个变量,后者就是赋值。Boya的赋值使用 ‘=’ , 比如:
A = (open+close)/2;
注意,Boya语言里,相等的比较判断符号是’==’,一个’=’是赋值的操作符。
控制语句
经常那个的控制语句有这么几个: if, while, for, switch,下面分别简单说明
if语句的结构:
if(cond)
{
bodya;
}
else
{
bodyb;
}
如果cond条件成立,也就是不等于零,则执行bodya, 否则执行bodyb. Cond是一个表达式,bodya,bodyb分别是语句组,如果是一句话(也就是只有一个’;’分隔符),那么,中括号可以省掉。比如:
if(closeopen)
A = 1;
else
A = 0;
e
您可能关注的文档
最近下载
- 八年级上名著《红岩》第10章(讲练测).docx VIP
- 表面处理技术在高端装备制造中的应用与挑战报告2025.docx
- 汪曾祺《钓鱼大夫》阅读答案试题解析理解 .pdf VIP
- 家庭反暴强制报告制度及服务流程.docx VIP
- 聚醚多元醇企业标准.pdf VIP
- 八年级上名著《红岩》第11章(讲练测).docx VIP
- T_CIATCM 093—2020_基层医疗卫生机构中医诊疗区(中医馆)团体标准远程会诊系统建设指南中国中医药信息学会.pdf VIP
- 八年级上名著《红岩》第12章(讲练测).docx VIP
- 2025国投生物制造创新研究院有限公司招聘(31人)考试备考试题及答案解析.docx VIP
- 边坡位移监测记录表.xlsx VIP
文档评论(0)