加载中…
个人资料
淡然之枫
淡然之枫
  • 博客等级:
  • 博客积分:0
  • 博客访问:208,269
  • 关注人气:69
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
博文
标签:

机器学习


在机器学习问题中,调优模型往往有多个维度的参数,如何选择一组或几组配合起来比较好的参数成了训练模型的一个重头戏。那么如何进行超参数调优呢?比较常见的一种算法就是利用粒子群算法(Particle Swarm Optimization),简称PSO算法。

PSO算法最早是由Eberhart和Kennedy于1995年提出,它的基本概念源于对鸟群觅食行为的研究。设想这样一个场景:一群鸟在随机搜寻食物,在这个区域里只有一块食物,所有的鸟都不知道食物在哪里,但是它们知道当前的位置离食物还有多远。那么找到食物的最优策略是什么呢?最简单有效的就是搜寻目前离食物最近的鸟的周围区域

在粒子群算法中,实体被抽象为粒子,而粒子的位置就是所求问题的解。现在想求得最优解就是要找到更新粒子位置的模式,即如何更新粒子的位置,才能让算法更快更好的收敛到最优解。PSO算法中粒子是根据粒子本身历史的最优位置和整个群体的

// 说明:通过调用ctp的trade接口,获取当前所有可交易的合约,如果账户登录不了的话,则不能成功查询
#include
#include
#include
#include 'ThostFtdcTraderApi.h'
using namespace std;
int iRequestID = 0;  //应答请求号
int Count(0);        //统计合约数
char *InstrumentName[5000];  //定义一个缓冲数组,用来保存合约名称的
TThostFtdcInstrumentIDType InstrumentName2[5000];  //总字节31*5000
BOOL OnRspQryInstrument_bIsLast(false);
char  FRONT_ADDR[] = 'tcp://180.168.146.187:10030'; // 前置地址
TThostFtdcBrokerIDType BROKER_ID = '9999';   // 经纪公司代码
TThostFtdcInvestorIDType INVESTOR_ID = '******';              // 注意输入你自己的simnow仿真投资者代码
TThostFtdcPasswordType  PASSWORD = '******';    // 注意输入你自己的simnow仿真用户密码

% 下面是一个例子,假设你已经将时间格式转为数字格式并得到下面的数据
% 验证如何设置时间坐标
% 简单点儿说吧:xtick是刻度(小竖线);xticklabel 刻度值(竖线下面的数值)。
% set(gca,'xtick',-pi:pi/2:pi)这句的意思是:手动设置x轴刻度,-pi到pi之间,每间隔pi/2,划一小竖线;
% set(gca,'xticklabel',{'-pi','-pi/2','0','pi/2','pi'})这句的意思是:给刚才划上的小竖线,标个数值。如果你把它改成:set(gca,'xticklabel',{'a','b','c','d','e'}),那么那小竖线下就变成:a,b,c,d,e了。


x = linspace(datenum('2013/1/1'),datenum('2014/1/1'),360);   %生成360个时间
y = sin(2*x+1);    % 生成时间序列y
plot(x,y);            % 画图
% 设计X轴坐标
N = 10;   %坐标轴上显示N个刻度
% x轴显示刻度的时间区间,以及区间数N
date_point = 
标签:

马科维茨均值方差模型

资本资产定价模型

套利定价理论

内在逻辑

   金融中以均值——方差偏好为基础而构建的投资组合理论、资本资产定价模型,以及APT套利定价理论有很强的内在逻辑性,以下是个人总结,不足之处望指教:

 

标签:

outofmemory

matlab

内存管理

                   

一、利用clear清除内存时,要用pack函数进行内存整理

标签:

matlab

空格

num2str

字符串

在matlab中用 num2str把矩阵转换为字符串时,默认是在矩阵元素之间加2个空格,对特定数据来讲,2个空格已经改变了字符串的长度,比如,想把矩阵[1,2,3]转换为‘1 2 3’,即转换成的字符串要求各矩阵元素相隔一个空格,如果直接运行 num2str([1,2,3]),结果为:
K>> num2str([1,2,3])
ans =
1  2  3
K>> length( num2str([1,2,3]))
ans =
     7
这种结果表明该函数在矩阵元素之间加了2个空格,如果只需要一个空格,需要输入一个特殊参数:空格+矩阵元素的数据类型,比如上述例子,可以输入“ ”+%d,即 num2str([1,2,3],'% d'),结果为:

K>> num2str([1,2,3],'% d')
ans =
1 2 3
K>> length(num2str([1,2,3],'% d'))
ans =
  &n
标签:

股票

matlab

蒙特卡罗

复制期权

欧式期权

    由于我国还没有期权上市,因此,在用期权对冲风险时就显得较为困难,好在有期货市场,可以用期货合成期权,比如拥有股票多头的投资者,可以选择用股指期货来对冲系统性风险,也可以用股指期货来合成期权对冲市场风险,本程序只给出了用现货复制欧式看涨期权的例子,用期货合成期权理论上是一样的,只不过较为复制写。
    期权复制的思路这里简单提一下,由于可以用期权、期权的标的和无风险资产构造一个delta无风险组合,这就相当于用期权标的可无风险资产复制出来一个期权产品,其实就是一个公式:期权+标的+无风险只产=0,那么可以变换上面的等式:期权 = -标的-无风险资产;标的 = -期权 -无风险资产,无风险资产 = -期权-标的,表示的含义分别是可以用无风险资产和标的构造期权、用无风险资产可期权来构造标的、用期权可标的构造无风险资产。
本程序实现了以下功能:
1.以股票为例,用股票合成一个欧式看涨期权多头,当前股价为49元,执行价为50元。
2.合成不同执行价格的期权,对比复制期权成本与期权理论价的区别,股票价格路径采取蒙特卡罗模拟生成,理论上,复制成本应该近似于期权理论价格。
标签:

tb

程序化

期货

a函数

TB中A函数实现程序化的思路——个人笔记
 这两周一直在用TB的A函数做程序化,记忆力越来越差,把以前做过的东西总结了一下,以备不时之需。
标签:

excel

引用

动态数据

画图

作图

第一步:定义名称,用名称来代替画图数据要引用的数据源(office2007版本)

进入excel“定义名称”对话框:

Excel

用matlab重命名excel工作表,删除工作表

转自:http://hi.baidu.com/kyu16866/item/2683acdc9f05f8b132db9063

  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有