OnReady事件中读取存在的数据莫名读不成来
onready测试代码如下
Params
Vars
Events
OnReady()
{
Integer z;
String str;
For z=0 to 20
{SetTBProfileString(SymbolName+\"_基础参数\",\"数字\"+Text(z),Text(z));}
For z=0 to 20
{str=GetTBProfileString(SymbolName+\"_基础参数\",\"数字\"+Text(z));
Print(str);}
}
//------------------------------------------------------------------------
运行结果如下
键值没问题
删除键值后,每次运行的结果都不一样
实际程序中
str=GetTBProfileString(SymbolName+\"_止盈\",\"止盈层级\");
ThenData=Value(str);
If(!(ThenData>=0&&ThenData<=10))
{SetTBProfileString(SymbolName+\"_止盈\",\"止盈层级\",\"0\");}
Print(str);
str==GetTBProfileString(SymbolName+\"_基础参数\",\"趋势是否已经有一段时间了\");
MyTrend=Value(str);Print(str);
If(MyTrend!=0&&MyTrend!=1&&MyTrend!=2)
{MyTrend=0;
SetTBProfileString(SymbolName+\"_基础参数\",\"趋势是否已经有一段时间了\",\"0\");}
这两个输出应该是不一样的
前者应该是9,后者应该是0
但实际输出都是9
证明str==GetTBProfileString(SymbolName+\"_基础参数\",\"趋势是否已经有一段时间了\");这键值根本没读取
str=GetTBProfileString(SymbolName+_止盈,止盈层级);
ThenData=Value(str);
If(!(ThenData>=0&&ThenData<=10))
{SetTBProfileString(SymbolName+_止盈,止盈层级,0);}
str==GetTBProfileString(SymbolName+_基础参数,趋势是否已经有一段时间了);
MyTrend=Value(str);
If(MyTrend!=0&&MyTrend!=1&&MyTrend!=2)
{MyTrend=0;
SetTBProfileString(SymbolName+_基础参数,趋势是否已经有一段时间了,0);}
str=GetTBProfileString(SymbolName+_基础参数,是否重仓);
Bigpos=Value(str);Print(str);
If(!(Bigpos>=0&&Bigpos<=10))
{Bigpos=0;
SetTBProfileString(SymbolName+_基础参数,是否重仓,0);}