【龙年贺礼】通达信金融终端(开心果交易版)V2024.02【经典顶栏】无时间限制
2024-02-032024年02月02日更新内容:1、去广告、去验证2、过交易后台验证3、永久屏蔽升级提示4、原生支持五档行情5、支持正版L2账户登...
WGestures 鼠标手势开源工具本是Win扩展利器;经过一段时间的折腾,我发现简直是交易软件的扩展神器;
因没什么普及文章,大多数股民朋友并不知道怎么用;为了群策群力发展更多的交易软件扩展功能,我就先在这里写些 WGestures 工具的精通要点与功能实现;
一、WGestures 设快捷涨跌停买卖按键序列;
鼠标右键+滚轮向下=涨停闪买,按键序列代码:.{sleep 300}{+}.{enter}
鼠标右键+滚轮向上=跌停闪卖,按键序列代码:.{sleep 300}{-}.{enter}
二、复制股名,自动转股码并在通达信、同花顺里模拟键盘敲击;
本功能需要 两个文件「xxxxxx.vbs」和「A股.txt」
先贴「xxxxxx.vbs」 脚本源码,本人原创首发;
(脚本源码只在WIN10下测试过,其它平台未知)
Dim ClipText
Dim Shell
Dim objHTML
Dim regEx, SKtext
Dim dir0, SkALL, StockN, StockX, StockNAME, StockSC, xxxxxx '股票名称代码变量
dir0 = left(wscript.scriptfullname,instrrev(wscript.scriptfullname,"\")-1) & "\A股.txt" '当前目录路径
Set Shell = WScript.CreateObject("Wscript.Shell") '调用键盘
Set objHTML = CreateObject("htmlfile") '取剪贴板内容
On Error Resume Next
ClipText = objHTML.ParentWindow.ClipboardData.GetData("text") '取剪贴板内容
wscript.sleep 10
Set regEx = CreateObject("VBScript.regexp") '正则表达式
regEx.Global = True
regEx.Pattern = "[^a-zA-Z\d\u4e00-\u9fa5]" '匹配非英文数字中文
SKtext = Left(regEx.Replace(ClipText, ""),13) '任意长文只截取前13个字符
regEx.Pattern = "\D+" '匹配非数字
StockX = Left(regEx.Replace(SKtext, ""),6) '替换非数字,只识别13个字符的前六位数字
If Len(StockX) = 6 And isnumeric(StockX) Then '必须判断字符有六位
xxxxxx = StockX
Else:
regEx.Pattern = "[^a-zA-Z\u4e00-\u9fa5]" '匹配非中文
StockN = Left(regEx.Replace(SKtext, ""),4) '替换非中文后,只识别前4个汉字是否为股名
set SkALL = createobject("scripting.filesystemobject").opentextfile(dir0) '取本地A股.txt内容
SkALL = SkALL.readall '取本地A股.txt内容
StockNAME = Mid(SkALL, InStr(SkALL, StockN), Len(StockN)) '调用剪贴板的股名
If StockNAME <> StockN Then StockNAME = Left(StockN,3) '股名长度
xxxxxx = Mid(SkALL, InStr(SkALL, StockNAME)-7,6) '股名转代码
End If
wscript.sleep 10
If Len(xxxxxx) = 6 And isnumeric(xxxxxx) Then '判断股票代码,必须再判断字符有六位
Shell.SendKeys left(xxxxxx,1) '键入第一位股码"
wscript.sleep 300 '暂停300毫秒"
Shell.SendKeys right(xxxxxx,5) '键入后五位股码"
Shell.SendKeys"{Enter}"
End If
Set dir0 = Nothing
Set ClipText = Nothing
Set Shell = Nothing
Set objHTML = Nothing
Set Times = Nothing
Set StockN = Nothing
Set StockNAME = Nothing
Set StockX = Nothing
Set xxxxxx = Nothing
Set regEx = Nothing
Set SKtext = Nothing
Set SkALL = Nothing
请将以上源码用记事本另存为「xxxxxx.vbs」
然后在通达信里可获得所需的另一个全目录股名代码的文本「A股.txt」
打开通达信点击「A股」,按键34打开「数据导出」,选「报表中所有数据」,「Excel 文件」导出;
然后打开 Excel 文件,全选B列进行三步替换:1、将双字符「A」全替换为单字符「A」;2、将 「空格符」全替换去掉;3、将「*ST」全替换「ST」。最后将AB两列复制到记事本另存为 A股.txt
(图2.1)
两个文件必须放在一起建议路径设为 D:\Program Files\VBS,然后就可以根据下图设置 WGestures
测试操作;
(图2.2)
如何将通达信与同花顺用 WGestures 联动呢?文末再讲这个问题。
先说些 WGestures 的具体概念,究竟什么是鼠标手势操作?你可以想象成用鼠标右键在屏幕上写字,所写横竖撇捺折的每一笔划均可触发你设定的一个指令。比如上图2.2的功能,你写了一横后便触发你设定的功能执行了「xxxxxx.vbs」。
汉字 「米」如果从中心点向外写的话共有八笔对应八个方向,在 WGestures 中就可设置为八种手势指令;
一笔划可以定义为一级手势
二笔组合则定义为二级手势
三笔以上就定义为三级手势
相对于其他软件,在 WGestures 中鼠标按键可组合成特级快捷键,无需手势配合;比如开头我们设定的涨停闪买「鼠标右键+滚轮向下」;
WGestures 中还有个特性就是可选择设定手势为「全局通用」或「仅对某个软件单设」。
一二三级手势可以对应PC操作动作频繁度来区分,比如 WGestures 的原生手势设定:右键向上为「复制」,右键向下为「粘贴」。
除了频繁度还可以用逻辑联想来设定,比如划分屏幕米字中心:
点击右斜下角触发了所有程序最小化到桌面,我们可以对应「右斜下」手势设定快捷键「Win+D」,反方向「左斜上」的手势则可联想设定为程序任务切换「Alt+Tab」。
同理左下角对应开始屏幕,我们就把「左斜下」手势设定为触发「Win」键,反方向「右斜上」设定为 窗口控制 窗口操作 「最大化/复原」;为什么不设定关闭窗口呢?因为一级手势误触率高。
对容错率低的指令一般要设置为三级手势。如果我们用 Clean up (清除) 第一个字母 C的手写过程设为手势然后触发「Delete」键,反写C的手势就可以设定为组合键「Ctrl+Z」来撤消PC误操作。
一些重要设定…
在全局下:请将鼠标「右键+左键」设为触发「Ctrl+C」,「右键+滚轮中键」设为触发「Ctrl+V」;同时也请保留 WGestures 里复制粘贴的原生设定;
在全局下:请将「鼠标右键+滚轮向下」设为向下翻页「PGDN」,及「鼠标右键+滚轮向上」向上翻页设为「PAUP」;请放心并不影响通达信涨停闪买、跌停闪卖的手势设定,因为图1.1里我们仅对通达信单独设定;
一些经历时间很久才有的经验…
对于不同品牌浏览器、或文字阅读窗口、或Win资源管理器虽然组合键命令有所不同,但请尽量用相同手势实现统一的操作结果。浏览器的鼠标手势「傲游浏览器」好像是第一原创首发,建议请以「傲游浏览器」的手势为蓝本统一操作不同品牌浏览器,再柔合其他阅读软件。
三、WGestures
任意文本划词搜索/划词翻译,任意位置屏幕取色;
(图3.1)
WGestures 除了右键可以划手势,也可同时用滚轮中键划手势执行指令;
比如上图3.1中我用滚轮中键手势「右斜下」执行划词搜索,用滚轮中键手势「右斜下+滚轮向下」执行划词划词翻译。
下面讲的屏幕取色功能,我则是用「滚轮中键+滚轮向上」手势执行指令;屏幕取色值是十六进制颜色码,会自动生成拷贝到剪切板;
十六进制颜色码如果用于通达信公式,请将数位12位与56位的数字互换!
以下是屏幕取色 Lua 脚本代码,源码来源于 WGestures 的软件作者!
-- 初始化 源码-----------------
luanet.load_assembly('System.Windows.Forms');
luanet.load_assembly('System');
luanet.load_assembly('System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a');
import('System.Drawing');
import('System.Drawing.Imaging');
import('System.Diagnostics');
Screen = luanet.import_type('System.Windows.Forms.Screen');
-- 执行 源码-----------------------
local scrBounds = Screen.PrimaryScreen.Bounds;
local bmp = Bitmap(scrBounds.Width,scrBounds.Height,PixelFormat.Format32bppArgb);
local g = Graphics.FromImage(bmp);
g:CopyFromScreen(scrBounds.X,scrBounds.Y,0,0,scrBounds.Size,CopyPixelOperation.SourceCopy);
-- 拷贝到剪贴板
local color = bmp:GetPixel(Context.StartPoint.X, Context.StartPoint.Y);
local psi = ProcessStartInfo("cmd", "/K echo " .. ColorTranslator.ToHtml(color) .. "| clip && exit");
psi.CreateNoWindow = true;
psi.UseShellExecute = false;
Process.Start(psi):Dispose(); -- hack
-- cleanup
if g then g:Dispose(); end;
if bmp then bmp:Dispose(); end;
(图3.2)
软件作者说:屏幕取色涉及到好几个API的调用,WGestures 使用的是 NLua 脚本 (//nlua.org),几乎可以调用任何 .Net 的方法;
四、通达信 to 同花顺,用 WGestures 联动;
(WGestures 虚拟按键代码参考)
在通达信里有个功能是标记文字(Ctrl+Q),只要标记里面最前的文字有股名或股码,我们便可以设置鼠标「右键+左键」手势执行自动打开关闭标记并复制标记文本。
鼠标右键+鼠标左键=标记复制,按键序列代码:^q{sleep 300}^a^c%{F4}
(图4.1)
「标记复制」再配合「xxxxxx.vbs」便可实现简单的个股联动。通达信里的的标记文件是mark.dat,在文件夹T0002里。mark.dat里面的格式有规律,如果你想要标记全部的个股代码,可以用 Excel 生成所需文本。
上图的通达信联动到同花顺功能并不完美,但如果能直接读取通达信行情内存读取个股代码,就不必多个标记复制步骤。如果能读取同花顺行情内存,就能反过来跟通达信互动。非程序员的我只会编写一点点VBA/VBS且不会API的调用,目前实现不了。WGestures作者写了另一个Lua脚本 稍作修改可以判断Win进程打开通达信或同花顺,但网上NLua教程几乎没有,我还是写不了WGestures里Lua脚本的按键调用。
写此文希望能群策群力,如果你开发出更骚的操作请多多留言或分享!
2024年02月02日更新内容:1、去广告、去验证2、过交易后台验证3、永久屏蔽升级提示4、原生支持五档行情5、支持正版L2账户登...
《阴线3号》2024新版股票池,股票池选股,每天2个,收盘后选股,第2天低吸。指标思路:取名《阴线3号》,首先所选K线必须是阴K,...
设计思路:以涨停的思路 新视觉 实战中验证过的新思路 以确认基因黄色柱 再次捕捉尾盘阴线 涨停因子发出信号 预测个股短周期中拉...
【竞价系统集合】不同的竞价系统提现出了自身各自的优势,尤其是在行情稳定的情况下!竞价系统是超短选手超好利器,没有之一,每...
【九封至尊】超级盘中资金版 涨停打板《 资金打分排名 》盘中尾盘专用 星级指标功能介绍:采取盘中资金模式 根据强势信号拉伸设...
软件说明:本版本是目前5月份网上能见到的最新版本,压缩包内为整套单独系统,版面已经设置好,解压即可运行,选股前需要下载完...
在您使用积分下载之前请先观看下面的视频并详细了解下方文字配图,看看是否适合自己,再考虑下载。ABC模型案例简介视频:http...
经测试该指标包含:BARSNEXT、REFX、REFXV、FINANCE未来函数,可能用于画线,经沙盘推演测试并未发现信号漂移,如果介意未来函数请...
【龙头战狼】指标套装,胜者为王、终极盈利模式!【战狼波段主图】本套指标设计两个主图,一个看盘简单明了,还有一个波段主图...
寻龙千万看风囗,高低关键是量能,量能若有筹码在,定有龙头居此间!!!本指标首板二板选股为盘后选股,二合一选股器,一键选...
本指标功能介绍:本指标是一款自动捕捉强势主力强势连续大幅度短期快速洗盘结束到位 稳健捕捉介入反转点 预报个股短期内大涨幅爆...