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

news2025/1/15 6:41:00

用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.coloradmin.cn/o/1519464.html

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

相关文章

C#使用迭代算法计算斐波那契数列通项

目录 1.斐波纳契数列 2.迭代一次产生1个新的通项 3.迭代一次产生2个新的通项 1.斐波纳契数列 斐波纳契数列的定义是&#xff0c;它的第一项和第二项均为1&#xff0c;以后各项都为前两项之和。 公式如下&#xff1a; F(n) F(n-1) F(n-2) 其中&#xff0c;F(1) 0,…

CTP-API开发系列之十:v6.7.0-Python版封装(Windows/Linux)(附源码)

CTP-API开发系列之十&#xff1a;v6.7.0-Python版封装&#xff08;Windows/Linux&#xff09;&#xff08;附源码&#xff09; CTP-API开发系列之十&#xff1a;v6.7.0-Python版封装&#xff08;Windows/Linux&#xff09;&#xff08;附源码&#xff09;资源获取准备工作Windo…

实验2 芯片测试算法设计

一、【实验目的】 &#xff08;1&#xff09;理解分治策略的设计思想&#xff1b; &#xff08;2&#xff09;熟悉将伪码转换为可运行的程序的方法&#xff1b; &#xff08;3&#xff09;能够根据算法的要求设计具体的实例。 二、【实验内容】 有n片芯片&#xff0c;其中好芯片…

蓝桥杯每日一题:血色先锋队

今天浅浅复习巩固一下bfs 答案&#xff1a; #include<iostream> #include<algorithm> #include<cstring>using namespace std; typedef pair<int,int> PII;const int N510; int n,m,a,b; int dist[N][N]; PII q[N*N]; int hh0,tt-1;int dx[]{1,0,-1,…

蓝桥杯[OJ 1621]挑选子串-CPP-双指针

目录 一、题目描述&#xff1a; 二、整体思路&#xff1a; 三、代码&#xff1a; 一、题目描述&#xff1a; 二、整体思路&#xff1a; 要找子串&#xff0c;则必须找头找尾&#xff0c;找头可以遍历连续字串&#xff0c;找尾则是要从头的基础上往后遍历&#xff0c;可以设头…

【spring】@Import 注解学习

Import 介绍 Import 是 Spring 框架中的一个注解&#xff0c;用于导入配置类或组件。它可以将一个或多个配置类或组件导入到当前的配置类或组件中&#xff0c;从而实现配置的复用和组合。 在Spring Boot应用中&#xff0c;Import注解可以帮助我们更加灵活地组织和管理配置类。…

(学习日记)2024.03.09:UCOSIII第十一节:就绪列表

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

正点原子精英版TFTLCD代码移植

&#xff08;1&#xff09;将lcd.c和lcd.h加入到HEADWARE文件中 &#xff08;2&#xff09;将lcd.c加入到环境中 选择lcd.c即可。 &#xff08;3&#xff09;在FWLib中添加stm32f10x_fsmc.c

Spring Boot整合canal实现数据一致性解决方案解析-部署+实战

&#x1f3f7;️个人主页&#xff1a;牵着猫散步的鼠鼠 &#x1f3f7;️系列专栏&#xff1a;Java全栈-专栏 &#x1f3f7;️个人学习笔记&#xff0c;若有缺误&#xff0c;欢迎评论区指正 目录 1.前言 2.canal部署安装 3.Spring Boot整合canal 3.1数据库与缓存一致性问题…

一篇普通的生活周记

学习进度汇报&#xff1a; 这周主要是参考着视频敲完了一个vue2后台项目&#xff0c;主要是vue2element-ui,因为之前写项目的时候用过lay-ui&#xff0c;虽然是结合着node.js写的&#xff0c;但是大差不差&#xff0c;所以上手也很快。同时&#xff0c;学长发给我们了ruoyi项目…

【Vue3】Vue3中路由规则的 props 配置

&#x1f497;&#x1f497;&#x1f497;欢迎来到我的博客&#xff0c;你将找到有关如何使用技术解决问题的文章&#xff0c;也会找到某个技术的学习路线。无论你是何种职业&#xff0c;我都希望我的博客对你有所帮助。最后不要忘记订阅我的博客以获取最新文章&#xff0c;也欢…

页面侧边栏顶部固定和底部固定方法

顶部固定用于侧边栏低于屏幕高度----左侧边栏 底部固定用于侧边栏高于屏幕高度----右侧边栏 vue页面方法 页面布局 页面样式&#xff0c;因为内容比较多&#xff0c; 只展示主要代码 * {margin: 0;padding: 0;text-align: center; } .head {width: 100%;height: 88px;back…

Vue+SpringBoot打造高校宿舍调配管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能需求2.1 学生端2.2 宿管2.3 老师端 三、系统展示四、核心代码4.1 查询单条个人习惯4.2 查询我的室友4.3 查询宿舍4.4 查询指定性别全部宿舍4.5 初次分配宿舍 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的…

数据结构--线性表

1.线性表的定义&#xff1a; 存在唯一的一个被称为“第一个”的数据元素&#xff1b; 存在唯一的一个被称为“最后一个”的数据元素&#xff1b; 除第一个之外&#xff0c;集合中的每一个数据元素都只有一个前驱&#xff1b; 除最后一个之外&#xff0c;集合中的每一个数据…

安卓百度地图API显示隐藏Marker

方法 BaiduMap.Marker.setVisible(boolean) 实现 List<Marker> list_marker new ArrayList<>(); boolean isShowMarker true;Override public boolean onCreateOptionsMenu(Menu menu) {String[] sm { "显隐信息", "显隐照片", "截…

【Python】新手入门学习:详细介绍迪米特原则(LoD)及其作用、代码示例

【Python】新手入门学习&#xff1a;详细介绍迪米特原则&#xff08;LoD&#xff09;及其作用、代码示例 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTor…

IDEA编译安卓源码TVBox(2)

一、项目结构&#xff1a;主要app和player app结构 二、增加遥控器按键选台 修改LivePlayActivity.java 1、声明变量 public String channelId "";public Timer timer new Timer();public Toast mToast;2、定义方法 private void mToastShow(String s){mToast …

数据结构(二)顺序表和链表

1.线性表 线性表&#xff08;linear list&#xff09;是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使 用的数据结构&#xff0c;常见的线性表&#xff1a;顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构&#xff0c;也就说是连续的一条直…

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

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

C语言:操作符详解(下)

目录 一、逗号表达式二、下标访问[ ]、函数调用()1. [ ]下标引用操作符2.函数调用操作符 三、结构成员访问操作符1.结构体(1) 结构的声明(2) 结构体变量的定义和初始化 2.结构成员访问操作符(1)结构体成员的直接访问(2)结构体成员的间接访问 四、操作符的属性&#xff1a;优先级…