你帮我写了一个简单的程序但一直运行不通. 我猜测是行情接收不到,因为我试图调用最新价格总返回0 不知道是否系统设置了行情接口不用动? 数据库接口是否要设置? 我点股票行情1,显示等待命令,这表示接通了行情网站吗? 我点核新委托,设置好帐户后显示已接通,这表示好了吗? 可我用错误的密码也显示已接通. 可我在程序中加入查目前持仓却返回0,实际我有相应股票. 另外我想一进入程序先查我有那些股票并显示出来,调用哪个函数?
> 行情接口没问题. 权证方式下: 行情1与2是老营业部行情,两个行情通道一共四个IP地址,你按接收情况选一到两个. 老营业部行情一般在开市期间才有(9:25--15:00),看营业部具体情形而定 行情3与4是闽发同花顺行情,两个行情通道也是四个独立IP地址,正常情况下,普通股票行情数据都有,但只有在开市期间才有权证行情.闽发同花顺行情登陆慢,一般要30秒 !!!!推荐你使用闽发同花顺行情,双通道同时接收,行情数据有没有,看主画面有没有. 无论是行情通道还是委托通道的相应状态显示,只显示连接状态,"已连通"只是指网络已连通, 然后才是登陆过程,行情通道状态"type....",这种状态才是正常接受状态,委托通道状态在"核新委托"方式下,由"已连通"--->"登陆成功"--->"查现有持仓"---->"查委托",正常时由 "查现有持仓"---->"查委托"定时切换 我给你的样板代码是没问题的,看来你还没分析过这段代码,正常运行时它要取当前成交价格,有效的话才会进行策略判断,另外策略运行时也有开市时间限定.
> 至于查持仓,你"核新委托"还没正常,你怎么搞其他的? 当委托连接正常后,在软件界面下面的窗口中自然会显示你的帐户信息. 这些都正常了之后,你再分析分析样板程序,假如你连样板程序都不先弄清爽,你编策略程序肯定会感觉很困难,当你搞清爽了,你问的就不成问题了 OK?
我晚上回家试了,在家行情3 4可用,显示已接通. 用外挂核新交易软件显示已连通,且显示持仓结果 在系统设置中有板有3个行情地址,是必须设置的吗?速度如何? 我白天只能在办公室用,局域网已锁同花顺端口,我用胜龙接受行情可以吗?
不行的,同花顺端口是8601,老营业部行情端口是8001,跟网管打个招呼应当没问题吧? 你用胜龙接收行情,和我的软件风马牛不相及啊. 假如你能使用通视接口或类似的收费接口,俺的软件改改支持它很简单 .........在系统设置中有板有3个行情地址,是必须设置的吗?速度如何? 这三个地址分别对应期货,外汇,和同花顺,一般不须设置. 只有当行情都接受不上时,说明服务器IP已经更换,才须在这里设置新的IP地址
我终于把行情和委托接通了.问题主要是 1行情必须设置同花顺服务器地址,端口是8001 2委托也是端口问题 8010 新问题:1.有时行情不稳,如何用备份(因为没有设第二个IP地址的地方) 2 .程序中返回价格小数位数太多,如价格为13.01,返回为13.00999 3. 如何调用显示? 4. 左上角下面的图是分时线吗?可否将KDJ显示在分时图上?
1.行情源一般不需设置,你可在两个通道同时打开行情,互为备用.行情通道一和二的同一行情选择(例如行情通道一与行情通道二股票行情3),IP也是不一样的 2.给你的画面文件(.qml后缀)必须存放到...\autop\qml\目录下 要看到如下画面,才为正确
1上面讲过,就不重复了 2.以前的贴子也讲过,小数点问题的产生是有历史渊源的,这没多大问题,你在计算时不用在乎它,在单的时候委托接口应当会处理它,你觉得不舒服,可以创建一个整型变量处理一下即可 例如: m_jg=13.00999; var m_int00.lVal=(m_jg+0.0001)*100; m_jg=m_int00/100; 3. 如何调用显示? 你要调用显示数据可通过库函数,你要在分时图上画线,也可通过库函数 你查查手册多试试 4 左上角下面的图是分时线吗?可否将KDJ显示在分时图上?[/QUOTE] 上面的图有历史曲线图,你可将指标切换到KDJ上,或在对象的控制参数中进行设置让他一开始就显示KDJ.这些都是你可以编辑和调整的 ****************** 上面的样板起动它,只需鼠标双击即可(停止也是双击)
我今天早上来,委托可以连接上.显示持仓. 但行情连接不上(上周五下午还连接上过),我用相关工具查看端口,发现咱们软件根本就没和同花顺接. 我的打开同花顺软件,它本身连接到211.154.41.133,端口8001. 而且行情没问题 我再将我们的核新IP行情及端口也设置为此,但点行情1-4都没反应 请问如何设置? 谢谢
我在调试下面函数时不对: OpenLsLib(GetPzName(0),GetPzType(1),0,0);//一分钟线 当日分时 var m_data_size=GetLsLibDataSize();//获取一分钟线总数 数据库正确打开,但m_data_size总是0(没有数据). 是否要设置数据库?如何设置? OpenLsLib分笔成交的参数是什么? 如果一分钟还没到,能否用本分钟内已收到的数据计算K D?
1.要确保有数据 2,你应当尽量用 var m_name=GetPzName(0); var m_type=GetPzType(1); OpenLsLib(m_name,m_type,0,0);//一分钟线 当日分时 便于调试 你也看到了,你的GetPzType(1);中的1不对,名称是品种一的,类型是品种二的 品种名称和类型决定系统内唯一的ID标识,一定要正确. 第三个参数是接口类型:0:一分钟线(包含完整的分笔数据,GetLsLibsData(type,no) ;//历史数据库获取分笔数据), 1:日线 .... 4是5分钟线 .... 第四个参数是时间:0:按默认,相当于6250925(月日时分),你若调622日的数据,可用 6220925,时分可以不设,系统会自动调用品种设置里的开市时间,月日为0表示当天数据 具体请查在线函数简易帮助和使用手册
....如果一分钟还没到,能否用本分钟内已收到的数据计算K D? 最后一个数据总是按最新的计算,是变化的.在策略编制中应当不用. 你若嫌一分钟的太慢,可用一分钟扩展方式(接口类型是10),他会将分笔数据按每五笔形成一组数据,一分钟不足五笔按五笔算.
我上面写错了,在程序中是正确调用的: var m_name=GetPzName(2); var m_type=GetPzType(2); OpenLsLib(m_name,m_type,0,0);//一分钟线 当日分时 以上返回都正确. var m_data_size=GetLsLibDataSize(); 返回仍然是0 你说要确保有数据,如何确保?它是自动存的吗? 日线数据在DAY下,分钟数据在MIN下,我看我要去的000011数据,应该是000011.nmn 大小为0,是否说明没存上分时数据? 如何存呢? 你说手册里有,可我找不到,比如参数57/58表示K D都是从你程序中了解的,帮助文件里都没有
一分钟数据和其他软件上的不一样,没有历史数据文件,一分钟数据只由分笔数据库产生.只有当日的数据,也就是说,你没有接受这一天的行情就没有这一天的一分钟数据.而分笔数据库数据量大,现在本软件还不支持分笔数据的补充. 一般使用到一分钟线的交易大部分都是当日交易,这类交易使用简单的历史数据文件并不能满足实际需要,所以本软件支持三日一分钟数据接口(类型为20),这个接口和一分钟的一样,完全基于分笔数据库.玩当日交易一定要做分笔数据积累 明白了没有?