蜡烛图K线图采用PictureBox控件绘制是实现量化交易的第一步非python量化

用vb6.0开发的量化交易软件

VB6量化交易软件的演示视频演示如上

股票软件中的蜡烛图是非常重要的一个东西,这里用VB6.0自带的Picture1控件的Line方法就可以实现绘制。

关于PictureBox   中的line   用法   msdn   上的说明为如下所示  
  object.Line   [Step]   (x1,   y1)   [Step]   -   (x2,   y2),   [color],   [B][F] 

然而,vb6 提供了一个更简单的画方框的方法。当在 Line 方法中运用 B 选项时,vb6把指定点作为矩形的对角点,可画出一个矩形。所以,可用下列语句,代替上例中的四个语句:

Line (500, 500)–Step(1000, 1000), , B

FillStyle 和 FillColor
只要不改变 FillStyle 属性的设置值,所画的方框将是空的。(该方框运用缺省的 FillStyle 和设置值来进行填充,不过 FillStyle 的缺省值是 1-透明。)可将 FillStyle 属性改变为下表列出的任意设置值。

设置值 描述
0 实心的。可用 FillColor 属性设置的颜色填充方框。
1 透明(缺省值)。无论运用何种色彩,图形对象表现为空。
2 水平线。
3 垂直线。
4 向上的对角线。
5 向下的对角线。
6 十字交叉线。
7 对角交叉线。


所以,将 FillStyle 设置为 0,便可以用 FillColor 属性的颜色设置,将方框填充为实心。

另一种填充方框的方法,是在 B 之后指定 F。(注意,没有 B 就不能用 F。)当运用 F 选项时,Line 方法将忽略 FillColor 和 FillStyle 属性。运用 F 选项时,方框总是被填充为实心。下述语句运用具有 ForeColor 属性的一种实心图样,对方框进行填充

软件采用的是VB6.0开发,无任何第三方组件和DLL模块,纯VB代码实现。

Public Type 股票基本信息结构体
 日期 As Date
 开盘价  As Double
 收盘价 As Double
 最高价 As Double
 最低价 As Double
 
 成交量 As Long  '成交了多少只股票
 
 成交额 As Double '
 
 
 振幅 As Double
 
 涨幅 As Double  '负数代表亏
  
 价差 As Double  '负数代表亏 - 这里表示亏多少
 
 换手率 As Double
 

End Type


Public Function 获取JSON数组成员股价属性(ByVal K线蜡烛图json数据 As String, ByVal 数组序号 As Long) As 股票基本信息结构体

        Dim arr
        Dim a As 股票基本信息结构体
        Dim 起始日期 As Date
        Dim 蜡烛数量 As Long, 单个蜡烛信息串 As String, tem As String, i As Long
        
         i = 数组序号
  

        tem = "data.klines[" & i & "]" 'klines
        单个蜡烛信息串 = JSONParse(tem, K线蜡烛图json数据) '获取数组长度
        
     If 单个蜡烛信息串 <> "" Then
        
        arr = Split(单个蜡烛信息串, ",") '拆分字符串
        a.日期 = arr(0)
        a.开盘价 = arr(1)
        a.收盘价 = arr(2)
        a.最高价 = arr(3)
        a.最低价 = arr(4)
        a.成交量 = arr(5)
        a.成交额 = arr(6)
        a.振幅 = arr(7)
        a.涨幅 = arr(8)
        a.价差 = arr(9)
        a.换手率 = arr(10)
'
'        Label1.Caption = a.开盘价
'        Label2.Caption = a.收盘价
'        Label3.Caption = Format(a.涨幅, "00.00") & "%"
        
        获取JSON数组成员股价属性 = a
    
      End If
End Function
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/748013.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LabVIEW电液伺服作动器

LabVIEW电液伺服作动器 随着工业自动化技术的快速发展&#xff0c;电液伺服作动器在各类精密控制领域得到了广泛应用。基于CRIO架构&#xff0c;利用LabVIEW软件开发了一套电液伺服作动器测控系统&#xff0c;实现了高精度的位移同步控制与测量&#xff0c;有效提高了系统的控…

3.Gen<I>Cam文件配置

Gen<I>Cam踩坑指南 我使用的是大恒usb相机&#xff0c;第一步到其官网下载大恒软件安装包,安装完成后图标如图所示&#xff0c;之后连接相机&#xff0c;打开软件&#xff0c;相机显示一切正常。之后查看软件的安装目录如图&#xff0c;发现有GenICam和GenTL两个文件&am…

uniapp无感登录封装

全局请求封装 https://blog.csdn.net/qq_42618566/article/details/109308690 无感登录封装 import {http} from "./index.js" let requestsQueue []; // 请求队列// 记录请求队列 export function recordRequests(path, params, loading, method) {requestsQueu…

JVM高频面试点(一):Java类加载过程

1.概述 在 Java 中&#xff0c;类加载过程是指将 Java 类的字节码加载到内存中&#xff0c;并转换为 Java 虚拟机能够识别和执行的数据结构的过程。类加载是 Java 虚拟机执行 Java 程序的必要步骤之一&#xff0c;它负责加载程序中用到的类和接口。下图所示是 ClassLoader 加载…

Apache Paimon 使用 Kafka CDC 获取数据

a.依赖准备 flink-sql-connector-kafka-*.jarb.支持的文件格式 Flink提供了几种Kafka CDC格式&#xff1a;Canal、Debezium、Ogg和Maxwell JSON。 如果Kafka的Topic中的消息是使用Change Data Capture&#xff08;CDC&#xff09;工具从另一个数据库捕获的change event&…

ChatGPT:突破写作限制,开启论文写作新境界

ChatGPT无限次数:点击直达 【引言】 在当今信息爆炸的时代&#xff0c;学术界对于高质量论文的需求日益增加。然而&#xff0c;对于许多研究者而言&#xff0c;论文写作是一个耗时且困难的过程。幸运的是&#xff0c;随着人工智能技术的进步&#xff0c;我们迎来了ChatGPT&…

C语言向C++过渡的基础知识(一)

目录 C关键字 C命名空间 命名空间的介绍 域作用限定符 命名空间的使用 C的输入以及输出 C中的缺省参数 缺省参数的介绍 缺省参数的使用 缺省参数的分类 全缺省参数 半缺省参数 C关键字 在C中&#xff0c;有63个关键字&#xff0c;而C语言只有32个关键字 asm do i…

鸿蒙车载原生开发,拓展新版图

一天内连发“五弹”、HiCar 4.0首次上车 华为鸿蒙狂扩“汽车朋友圈”-上游新闻 汇聚向上的力量 3月15日&#xff0c;在“华为云&华为终端云服务创新峰会2024”上&#xff0c;华为首批汽车行业伙伴广汽传祺、岚图汽车、零跑汽车、凯翼汽车加入鸿蒙生态合作&#xff0c;华为…

FPGA高端项目:FPGA基于GS2971+GS2972架构的SDI视频收发+OSD动态字符叠加,提供1套工程源码和技术支持

目录 1、前言免责声明 2、相关方案推荐本博已有的 SDI 编解码方案本方案的SDI接收发送本方案的SDI接收图像缩放应用本方案的SDI接收纯verilog图像缩放纯verilog多路视频拼接应用本方案的SDI接收HLS图像缩放HLS多路视频拼接应用本方案的SDI接收HLS多路视频融合叠加应用本方案的S…

如何用 UDP 实现可靠传输?并以LabVIEW为例进行说明

UDP&#xff08;用户数据报协议&#xff09;本身是一个无连接的、不可靠的传输协议&#xff0c;它不提供数据包的到达确认、排序保证或重传机制。因此&#xff0c;如果要在UDP上实现可靠传输&#xff0c;就需要在应用层引入额外的机制。以下是一些常见的方法&#xff1a; 确认和…

在github上如何删除自己仓库里没用的项目

在GitHub上删除自己仓库里的无用项目可以通过以下步骤进行&#xff1a; 在GitHub上登录您的账号并进入要删除的仓库页面。 在仓库页面的右上角&#xff0c;点击“Settings”&#xff08;设置&#xff09;按钮。 在仓库设置页面的左侧导航栏中&#xff0c;点击“Options”&…

工业物联网平台在水务环保、暖通制冷、电力能源等行业的应用

随着科技的不断发展&#xff0c;工业物联网平台作为连接物理世界与数字世界的桥梁&#xff0c;正逐渐成为推动各行业智能化转型的关键力量。在水务环保、暖通制冷、电力能源等行业&#xff0c;工业物联网平台的应用尤为广泛&#xff0c;对于提升运营效率、降低能耗、优化管理等…

mac安装rust开发环境,使用brew安装和全局配置

mac下使用brew可以一键安装环境&#xff1a; brew install rustup 安装完成执行&#xff1a; rustup-init 按照提示配置即可&#xff1a; 出现&#xff1a; 想要全局生效&#xff1a; echo export PATH"$HOME/.cargo/bin:$PATH" >> ~/.bash_profile source…

【Unity+Vuforia】AR 发布安卓的设置

Player Settings > Resolution and Presentation > Default Orientation portrait Player Settings > Other Settings > Auto Graphics API 取消勾选 Player Settings > Other Settings > Graphics APIs 选择OpenGLES3删除其他的 Player Settings…

【elasticsearch实战】从零开始设计全站搜索引擎

业务需求 最近需要一个全站搜索的功能&#xff0c;我们的站点的特点是数据多源&#xff0c;即有我们本地数据库&#xff0c;也包含了第三方数据源&#xff0c;我们的数据类型除了网页&#xff0c;还包括了各种类型的文档&#xff0c;例如&#xff1a;doc、pdf、excel、ppt等格…

MapReduce的原理分析

1.概述 MapReduce的思想核心是“分而治之,先分再合”&#xff0c;适用于大量复杂任务处理场景(大规模数据处理场景)。 MapReduce分两个阶段: map阶段(分)&#xff1a;如果任何可以拆分并且没有依赖&#xff0c;那么就把复杂的任务拆分成小任务&#xff0c;拆分成小任务之后&a…

嵌入式学习day38 HTML

1.格式 <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>中文测试。。。。</title> </head> <body> 这里是测试body测试内容。。。 </body> </ht…

Ubuntu 安装 KVM 虚拟化

1. Ubuntu 安装 KVM 虚拟化 KVM 是 Linux 内核中一个基于 hypervisor 的虚拟化模块&#xff0c;它允许用户在 Linux 操作系统上创建和管理虚拟机。 如果机器的CPU不支持硬件虚拟化扩展&#xff0c;是无法使用KVM(基于内核的虚拟机)直接创建和运行虚拟机的。此时最多只能使用…

flink重温笔记(十七): flinkSQL 顶层 API ——SQLClient 及流批一体化

Flink学习笔记 前言&#xff1a;今天是学习 flink 的第 17 天啦&#xff01;学习了 flinkSQL 的客户端工具 flinkSQL-client&#xff0c;主要是解决大数据领域数据计算避免频繁提交jar包&#xff0c;而是简单编写sql即可测试数据&#xff0c;文章中主要结合 hive&#xff0c;即…

初探文件包含漏洞

目录 1.什么是文件包含漏洞2.漏洞分类3.php中常见的文件包含函数4.文件包含漏洞的绕过方法4.1本地文件包含&#xff08;LFI&#xff09;绕过方法&#xff1a;4.2远程文件包含&#xff08;RFI&#xff09;绕过方法&#xff1a; 5.对于文件包含漏洞的防御措施 1.什么是文件包含漏…