股票

2020-03-03盘后总结

折月煮酒 提交于 2020-03-04 10:20:33
指数 1、上证指数2992.90,涨幅0.74%;深证成指11484.21,涨幅0.90%;中小板指7563.93,涨幅0.71%;创业板指2173.35,涨幅1.78% 外资 1、深股通资金净流入-6.65亿,沪股通资金净流入11.45亿,北向资金净流入4.80亿。 2、沪深股通成交额前十 (沪股通) (深股通) 两融余额 1、融资余额10962.82亿,融券余额152.36亿。 板块 来源: CSDN 作者: 三郎君 链接: https://blog.csdn.net/qq_38870388/article/details/104646666

LeetCode 股票买卖问题

南笙酒味 提交于 2020-03-03 17:29:03
LeetCode 股票买卖问题 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 k 笔交易。 注意: 你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [2,4,1], k = 2 输出: 2 解释: 在第 1 天 (股票价格 = 2) 的时候买入,在第 2 天 (股票价格 = 4) 的时候卖出,这笔交易所能获得利润 = 4-2 = 2 。 示例 2: 输入: [3,2,6,5,0,3], k = 2 输出: 7 解释: 在第 2 天 (股票价格 = 2) 的时候买入,在第 3 天 (股票价格 = 6) 的时候卖出, 这笔交易所能获得利润 = 6-2 = 4 。 随后,在第 5 天 (股票价格 = 0) 的时候买入,在第 6 天 (股票价格 = 3) 的时候卖出, 这笔交易所能获得利润 = 3-0 = 3 。 开始先不进行该题的解答,我们先分析整个框架,拿这道题来举例,最后解决leetcode上所有的股票买卖问题 ⼀、 穷举框架 我们不⽤递归思想进⾏穷举, ⽽是利⽤「 状态 」 进⾏穷举。 我们具体到 每⼀天 , 看看总共有⼏种可能的「 状态 」 , 再找出每个「 状态 」 对应的「 选择 」 。 我们要穷举所有「 状态 」 , 穷举的⽬的是根据对应的「 选择 」

LeetCode练题——122. Best Time to Buy and Sell Stock II

痴心易碎 提交于 2020-03-03 13:38:17
1、题目 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6,4] 输出: 7 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6-3 = 3 。 示例 2: 输入: [1,2,3,4,5] 输出: 4 解释: 在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 注意你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出。 因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。 示例 3: 输入: [7,6,4,3,1] 输出: 0 解释: 在这种情况下, 没有交易完成, 所以最大利润为 0。 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell

股票所有历史开盘数据下载成本地数据

依然范特西╮ 提交于 2020-03-02 18:02:02
股票历史数据是研究和分析股票的基础数据,不管是量化分析还是看股票走势都少不了历史开盘数据,今天来写一写如何把 股票所有历史开盘数据下载成本地数据 。 照例:不想写代码的直接翻到底部,有现成的工具可以下载。 首先找到目标网站,长这样(避免一些问题,就不提名字了): 数据还是很规范的,开盘价、收盘价、最高价、最低价、交易量、涨跌幅都有。 股票所有历史开盘数据都在网页源代码里了,省的我们F12了,在网页源代码里数据是这样的: 数据格式还是很规范的,方便我们下载~ import re import pandas import requests url = '目标网站的url' # 这里不写具体网站的链接了,大体做法都是一样的。 response = requests.get(url).text # 得到网页的源代码 ###下面是解析开盘数据的代码,大部分都可以这么参考,简单的正则表达式### times = re.findall('class="first left bold noWrap">(.*?)</td>').group(1) # 获取到所有历史的交易时间 open_price = re.findall('class="first left bold noWrap">.*?</td>\s+<td data-real-value="(.*?)"').group(1) #

数据结构与算法之买股票的最佳时机

一个人想着一个人 提交于 2020-03-02 04:18:22
买股票的最佳时机 题目 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。 示例 2: 输入: [7,6,4,3,1] 输出: 0 解释: 在这种情况下, 没有交易完成, 所以最大利润为 0。 链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock。 思路 利用两个for循环依次求出后面数与其前面数的差值,输出这些差值中的最大值即为最大利润。 源代码(c++) class Solution { public : int maxProfit ( vector < int > & prices ) { int len = prices . size ( ) ; int max = 0 ; int res = 0 ; for ( int i = 0 ; i < len - 1 ; i ++ ) { for ( int

作业

人走茶凉 提交于 2020-03-02 01:06:46
LeeCode 53题 求最大子序和 给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 例:输入: [-2,1,-3,4,-1,2,1,-5,4], 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 class Solution { public : int maxSubArray ( vector < int > & nums ) { if ( nums . size ( ) == 0 ) return - 1 ; int sum = nums [ 0 ] ; int maxsum = nums [ 0 ] ; for ( int i = 1 ; i < nums . size ( ) ; ++ i ) { if ( sum > 0 ) sum = sum + nums [ i ] ; else sum = nums [ i ] ; if ( maxsum < sum ) maxsum = sum ; } return maxsum ; } } ; LeeCode 88题 有序数组和 给定两个有序整数数组 nums1 和 nums2,将 nums2 合并到 nums1 中,使得 num1 成为一个有序数组。 说明: 初始化 nums1 和 nums2 的元素数量分别为 m 和 n。 你可以假设

买麦股票的最佳时机 题解

|▌冷眼眸甩不掉的悲伤 提交于 2020-03-01 23:02:03
题目: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 思路: 依据卖出价,从后往前依次求差,从而找出最大差价。 class Solution { public : int maxProfit ( vector < int > & prices ) { int D_value = - INT_MAX ; vector < int > T ( prices . size ( ) + 1 , 0 ) ; T . push_back ( 0 ) ; copy ( prices . begin ( ) , prices . end ( ) , T . begin ( ) + 1 ) ; int Max = T . back ( ) ; for ( vector < int > :: iterator pr = T . end ( ) - 1 ; pr != T . begin ( ) ; pr -- ) { if ( D_value < ( Max - * pr ) ) D_value = Max - * pr ; if ( * pr > Max ) Max = * pr ; } return D_value ; } } ; 来源: CSDN

买卖股票的最佳时机

扶醉桌前 提交于 2020-03-01 19:25:30
题目: 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票),设计一个算法来计算你所能获取的最大利润。 注意你不能在买入股票前卖出股票。 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。 注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。 解题思路: 我们可以设置两个变量,一个变量表示当前的最小价格,一个变量表示当前的最大利润。遍历这个数组,先更新目前为止的最小价格,然后再将当前的价格减去当前的最小价格(利润),以此为根据更新最大利润。遍历完数组,返回最大利润即可。 代码: class Solution: def maxProfit(self, prices: List[int]) -> int: minPrice = float("inf") maxProfit = 0 if len(prices) == 0: return 0 for num in prices: if num < minPrice: minPrice = num if num - minPrice > maxProfit: maxProfit = num - minPrice return

122. 买卖股票的最佳时机 II

泄露秘密 提交于 2020-03-01 09:41:13
给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6,4] 输出: 7 解释: 在第 2 天(股票价格 = 1)的时候买入,在第 3 天(股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 随后,在第 4 天(股票价格 = 3)的时候买入,在第 5 天(股票价格 = 6)的时候卖出, 这笔交易所能获得利润 = 6-3 = 3 。 示例 2: 输入: [1,2,3,4,5] 输出: 4 解释: 在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。 注意你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出。 因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。 示例 3: 输入: [7,6,4,3,1] 输出: 0 解释: 在这种情况下, 没有交易完成, 所以最大利润为 0。 解法来源 题目要求是可以多次买入卖出 采用贪心的思路 只要在第二天能够赢利的情况下都会进行操作,若果在第二天不能赢利则不买入 prices[i]-prices[i-1]

量化交易入门阶段:三均线策略是否好于双均线(下)?

丶灬走出姿态 提交于 2020-03-01 08:35:23
在文章《三均线策略是否好于双均线(中)》中,我跟大家说过,将30日均线作为判断趋势的依据,同时通过10/60日均线找买卖点这种方法很少有人用,但是恰恰比大多数人用的方法好。 但是三条均线可不止这一种用法,所以本文,继续探讨其他方法。 上篇文章中的30日均线作为判断趋势的依据,10/60均线作为买卖点的收益率,如下: 本文,我们换一个方法,毕竟三条均线理论上应该有三个金叉死叉。以我们目前用的10/30/60为例分别是: 10和30,金叉,死叉。 10和60,金叉,死叉。 30和60,金叉,死叉。 上一次是以30日均线作为判断方向的依据,10和60日均线作为买卖点。 本篇文章,我们用金叉和死叉最为进出场信号,当然,不是最简单的两条均线金叉死叉,而是三条均线的金叉死叉,一个组合作为进场,另外两个组合作为出场,每一种进场对应两周出场,毫无疑问,这样的交易方式最少有6种。 如下: 10和30均线 10和60日均线 30和60日均线 金叉进场(快线+快线进场) 死叉出场(快线+慢线出场) 死叉出场(慢线+慢线出场) 死叉出场(快线+快线出场) 金叉进场(快线+慢线进场) 死叉出场(慢线+慢线出场) 死叉出场(快线+快线出场) 死叉出场(快线+慢线出场) 金叉进场(慢线+慢线进场) 这篇文章,我们就测试一下这6种方式。 这回我们的策略是: 入场时间: 2019年1月1日-2019年12月1日