播放指定任意的字符串实现语音合成和语音识别。
用法:SPEAK(COND,STR),当最后一个周期得COND条件成立时,播放指定字符串的语音合成.
例如:SPEAK(CLOSE>OPEN,'出现阳线'),当最后一个周期为阳线时语音播放'出现阳线'.
该函数在相同周期只会播放一次,如果需要在相同周期重复播放,请使用ALLOWREPEAT控制符
例如:
SPEAK(CLOSE>OPEN,'出现阳线'),ALLOWREPEAT;
警告:
不要使用该函数播报过长的文字,会造成系统资源占用.
所属函数组:特色函数
想用这个函数实现 满足报警条件的合约,实现语音报出合约名来? 可以实现吗
STKNAME 直接获取到品种名称的。把这个作为speak的第二个参数试试。
以下是引用FireScript在2020/9/11 10:45:22的发言:
STKNAME 直接获取到品种名称的。把这个作为speak的第二个参数试试。
谢谢,我刚才找到的是DYNAINFO(219) 这个,不太对,
怎么不对的。把问题说清楚些。您这种表述没有任何意义
STKNAME 用这个参数,只能报个 2101 “ two one zero one ”,合约中文名还是出不来
不会吧。 我刚试过,我本地是中文。你本地什么操作系统?这个函数我们是调用了一个操作系统的控件来处理的。
IB30:STKINDI(STKLABEL,'IBXG.IB',0,4,-1),NODRAW;
IB30H:STKINDI(STKLABEL,'IBXG.IBH',0,4,-1),COLORMAGENTA;
IB30L:STKINDI(STKLABEL,'IBXG.IBL',0,4,-1),COLORMAGENTA;
up2:=COUNT(cross(c,IB30H),30)<3;
dw2:=COUNT(cross(IB30l,c),30)<3;
//30
IB30 and cross(c,IB30H) and up2;
speak(IB30 and cross(c,IB30H) and up2,STKNAME());
ib30 and cross(IB30l,c) and dw2;
speak(ib30 and cross(IB30l,c) and dw2,STKNAME());
看我写的代码是不是有问题