diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..e6f1a0c --- /dev/null +++ b/.travis.yml @@ -0,0 +1,8 @@ +language: python +python: + - "2.7" +# command to install dependencies +install: "pip install -r requirements.txt" +# command to run tests +script: + - python stock_trader.py diff --git a/BP.py b/BP.py index 8f60e1a..61519fc 100644 --- a/BP.py +++ b/BP.py @@ -1,193 +1,193 @@ -# coding=utf-8 -# Back-Propagation Neural Networks -# http://blog.csdn.net/akunainiannian/article/details/40073903 - -import math -import random -import string - -random.seed(0) - -# calculate a random number where: a <= rand < b -def rand(a, b): - return (b-a)*random.random() + a - -# Make a matrix (we could use NumPy to speed this up) -def makeMatrix(I, J, fill=0.0): - m = [] - for i in range(I): - m.append([fill]*J) - return m - -# our sigmoid function, tanh is a little nicer than the standard 1/(1+e^-x) -#使用双正切函数代替logistic函数 -def sigmoid(x): - return math.tanh(x) - -# derivative of our sigmoid function, in terms of the output (i.e. y) -# 双正切函数的导数,在求取输出层和隐藏侧的误差项的时候会用到 -def dsigmoid(y): - return 1.0 - y**2 - -class NN: - def __init__(self, ni, nh, no): - # number of input, hidden, and output nodes - # 输入层,隐藏层,输出层的数量,三层网络 - self.ni = ni + 1 # +1 for bias node - self.nh = nh - self.no = no - - # activations for nodes - self.ai = [1.0]*self.ni - self.ah = [1.0]*self.nh - self.ao = [1.0]*self.no - - # create weights - #生成权重矩阵,每一个输入层节点和隐藏层节点都连接 - #每一个隐藏层节点和输出层节点链接 - #大小:self.ni*self.nh - self.wi = makeMatrix(self.ni, self.nh) - #大小:self.ni*self.nh - self.wo = makeMatrix(self.nh, self.no) - # set them to random vaules - #生成权重,在-0.2-0.2之间 - for i in range(self.ni): - for j in range(self.nh): - self.wi[i][j] = rand(-0.2, 0.2) - for j in range(self.nh): - for k in range(self.no): - self.wo[j][k] = rand(-2.0, 2.0) - - # last change in weights for momentum - #? - self.ci = makeMatrix(self.ni, self.nh) - self.co = makeMatrix(self.nh, self.no) - - def update(self, inputs): - if len(inputs) != self.ni-1: - raise ValueError('wrong number of inputs') - - # input activations - # 输入的激活函数,就是y=x; - for i in range(self.ni-1): - #self.ai[i] = sigmoid(inputs[i]) - self.ai[i] = inputs[i] - - # hidden activations - #隐藏层的激活函数,求和然后使用压缩函数 - for j in range(self.nh): - sum = 0.0 - for i in range(self.ni): - #sum就是《ml》书中的net - sum = sum + self.ai[i] * self.wi[i][j] - self.ah[j] = sigmoid(sum) - - # output activations - #输出的激活函数 - for k in range(self.no): - sum = 0.0 - for j in range(self.nh): - sum = sum + self.ah[j] * self.wo[j][k] - self.ao[k] = sigmoid(sum) - - return self.ao[:] - - #反向传播算法 targets是样本的正确的输出 - def backPropagate(self, targets, N, M): - if len(targets) != self.no: - raise ValueError('wrong number of target values') - - # calculate error terms for output - #计算输出层的误差项 - output_deltas = [0.0] * self.no - for k in range(self.no): - #计算k-o - error = targets[k]-self.ao[k] - #计算书中公式4.14 - output_deltas[k] = dsigmoid(self.ao[k]) * error - - # calculate error terms for hidden - #计算隐藏层的误差项,使用《ml》书中的公式4.15 - hidden_deltas = [0.0] * self.nh - for j in range(self.nh): - error = 0.0 - for k in range(self.no): - error = error + output_deltas[k]*self.wo[j][k] - hidden_deltas[j] = dsigmoid(self.ah[j]) * error - - # update output weights - # 更新输出层的权重参数 - # 这里可以看出,本例使用的是带有“增加冲量项”的BPANN - # 其中,N为学习速率 M为充量项的参数 self.co为冲量项 - # N: learning rate - # M: momentum factor - for j in range(self.nh): - for k in range(self.no): - change = output_deltas[k]*self.ah[j] - self.wo[j][k] = self.wo[j][k] + N*change + M*self.co[j][k] - self.co[j][k] = change - #print N*change, M*self.co[j][k] - - # update input weights - #更新输入项的权重参数 - for i in range(self.ni): - for j in range(self.nh): - change = hidden_deltas[j]*self.ai[i] - self.wi[i][j] = self.wi[i][j] + N*change + M*self.ci[i][j] - self.ci[i][j] = change - - # calculate error - #计算E(w) - error = 0.0 - for k in range(len(targets)): - error = error + 0.5*(targets[k]-self.ao[k])**2 - return error - - #测试函数,用于测试训练效果 - def test(self, patterns): - for p in patterns: - print(p[0], '->', self.update(p[0])) - - def weights(self): - print('Input weights:') - for i in range(self.ni): - print(self.wi[i]) - print() - print('Output weights:') - for j in range(self.nh): - print(self.wo[j]) - - def train(self, patterns, iterations=1000, N=0.5, M=0.1): - # N: learning rate - # M: momentum factor - for i in range(iterations): - error = 0.0 - for p in patterns: - inputs = p[0] - targets = p[1] - self.update(inputs) - error = error + self.backPropagate(targets, N, M) - if i % 100 == 0: - print('error %-.5f' % error) - - -def demo(): - # Teach network XOR function - pat = [ - [[0], [0]], - [[2], [1]], - [[3], [1]], - [[4], [5]] - ] - - # create a network with two input, two hidden, and one output nodes - n = NN(1, 2, 1) - # train it with some patterns - n.train(pat) - # test it - n.test(pat) - - - -if __name__ == '__main__': - demo() +# coding=utf-8 +# Back-Propagation Neural Networks +# http://blog.csdn.net/akunainiannian/article/details/40073903 + +import math +import random +import string + +random.seed(0) + +# calculate a random number where: a <= rand < b +def rand(a, b): + return (b-a)*random.random() + a + +# Make a matrix (we could use NumPy to speed this up) +def makeMatrix(I, J, fill=0.0): + m = [] + for i in range(I): + m.append([fill]*J) + return m + +# our sigmoid function, tanh is a little nicer than the standard 1/(1+e^-x) +#使用双正切函数代替logistic函数 +def sigmoid(x): + return math.tanh(x) + +# derivative of our sigmoid function, in terms of the output (i.e. y) +# 双正切函数的导数,在求取输出层和隐藏侧的误差项的时候会用到 +def dsigmoid(y): + return 1.0 - y**2 + +class NN: + def __init__(self, ni, nh, no): + # number of input, hidden, and output nodes + # 输入层,隐藏层,输出层的数量,三层网络 + self.ni = ni + 1 # +1 for bias node + self.nh = nh + self.no = no + + # activations for nodes + self.ai = [1.0]*self.ni + self.ah = [1.0]*self.nh + self.ao = [1.0]*self.no + + # create weights + #生成权重矩阵,每一个输入层节点和隐藏层节点都连接 + #每一个隐藏层节点和输出层节点链接 + #大小:self.ni*self.nh + self.wi = makeMatrix(self.ni, self.nh) + #大小:self.ni*self.nh + self.wo = makeMatrix(self.nh, self.no) + # set them to random vaules + #生成权重,在-0.2-0.2之间 + for i in range(self.ni): + for j in range(self.nh): + self.wi[i][j] = rand(-0.2, 0.2) + for j in range(self.nh): + for k in range(self.no): + self.wo[j][k] = rand(-2.0, 2.0) + + # last change in weights for momentum + #? + self.ci = makeMatrix(self.ni, self.nh) + self.co = makeMatrix(self.nh, self.no) + + def update(self, inputs): + if len(inputs) != self.ni-1: + raise ValueError('wrong number of inputs') + + # input activations + # 输入的激活函数,就是y=x; + for i in range(self.ni-1): + #self.ai[i] = sigmoid(inputs[i]) + self.ai[i] = inputs[i] + + # hidden activations + #隐藏层的激活函数,求和然后使用压缩函数 + for j in range(self.nh): + sum = 0.0 + for i in range(self.ni): + #sum就是《ml》书中的net + sum = sum + self.ai[i] * self.wi[i][j] + self.ah[j] = sigmoid(sum) + + # output activations + #输出的激活函数 + for k in range(self.no): + sum = 0.0 + for j in range(self.nh): + sum = sum + self.ah[j] * self.wo[j][k] + self.ao[k] = sigmoid(sum) + + return self.ao[:] + + #反向传播算法 targets是样本的正确的输出 + def backPropagate(self, targets, N, M): + if len(targets) != self.no: + raise ValueError('wrong number of target values') + + # calculate error terms for output + #计算输出层的误差项 + output_deltas = [0.0] * self.no + for k in range(self.no): + #计算k-o + error = targets[k]-self.ao[k] + #计算书中公式4.14 + output_deltas[k] = dsigmoid(self.ao[k]) * error + + # calculate error terms for hidden + #计算隐藏层的误差项,使用《ml》书中的公式4.15 + hidden_deltas = [0.0] * self.nh + for j in range(self.nh): + error = 0.0 + for k in range(self.no): + error = error + output_deltas[k]*self.wo[j][k] + hidden_deltas[j] = dsigmoid(self.ah[j]) * error + + # update output weights + # 更新输出层的权重参数 + # 这里可以看出,本例使用的是带有“增加冲量项”的BPANN + # 其中,N为学习速率 M为充量项的参数 self.co为冲量项 + # N: learning rate + # M: momentum factor + for j in range(self.nh): + for k in range(self.no): + change = output_deltas[k]*self.ah[j] + self.wo[j][k] = self.wo[j][k] + N*change + M*self.co[j][k] + self.co[j][k] = change + #print N*change, M*self.co[j][k] + + # update input weights + #更新输入项的权重参数 + for i in range(self.ni): + for j in range(self.nh): + change = hidden_deltas[j]*self.ai[i] + self.wi[i][j] = self.wi[i][j] + N*change + M*self.ci[i][j] + self.ci[i][j] = change + + # calculate error + #计算E(w) + error = 0.0 + for k in range(len(targets)): + error = error + 0.5*(targets[k]-self.ao[k])**2 + return error + + #测试函数,用于测试训练效果 + def test(self, patterns): + for p in patterns: + print(p[0], '->', self.update(p[0])) + + def weights(self): + print('Input weights:') + for i in range(self.ni): + print(self.wi[i]) + print() + print('Output weights:') + for j in range(self.nh): + print(self.wo[j]) + + def train(self, patterns, iterations=1000, N=0.5, M=0.1): + # N: learning rate + # M: momentum factor + for i in range(iterations): + error = 0.0 + for p in patterns: + inputs = p[0] + targets = p[1] + self.update(inputs) + error = error + self.backPropagate(targets, N, M) + if i % 100 == 0: + print('error %-.5f' % error) + + +def demo(): + # Teach network XOR function + pat = [ + [[0], [0]], + [[2], [1]], + [[3], [1]], + [[4], [5]] + ] + + # create a network with two input, two hidden, and one output nodes + n = NN(1, 2, 1) + # train it with some patterns + n.train(pat) + # test it + n.test(pat) + + + +if __name__ == '__main__': + demo() diff --git a/BP.pyc b/BP.pyc new file mode 100644 index 0000000..172f6b9 Binary files /dev/null and b/BP.pyc differ diff --git a/README.md b/README.md index 9d90360..0d6b02f 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ -- 实时交易 -- 历史回撤 - +[![Build Status](https://www.travis-ci.org/lishulincug/stock-2.svg?branch=master)](https://www.travis-ci.org/lishulincug/stock-2) +- 实时交易 +- 历史回撤 +-均线策略 +-趋势策略 +计算策略收益以及超额收益 +根据经验判断基金买卖情况 +发送邮件 diff --git a/cleastsq.py b/cleastsq.py index d2890a2..9094f61 100644 --- a/cleastsq.py +++ b/cleastsq.py @@ -1,115 +1,115 @@ -# coding=utf-8 - -''' -作者:Jairus Chan -程序:多项式曲线拟合算法 -''' -import matplotlib.pyplot as plt -import math -import numpy -import random - -#阶数为9阶 -order=9 - -#进行曲线拟合 -def getMatA(xa): - matA=[] - for i in range(0,order+1): - matA1=[] - for j in range(0,order+1): - tx=0.0 - for k in range(0,len(xa)): - dx=1.0 - for l in range(0,j+i): - dx=dx*xa[k] - tx+=dx - matA1.append(tx) - matA.append(matA1) - - matA=numpy.array(matA) - return matA - -def getMatB(xa,ya): - matB=[] - for i in range(0,order+1): - ty=0.0 - for k in range(0,len(xa)): - dy=1.0 - for l in range(0,i): - dy=dy*xa[k] - ty+=ya[k]*dy - matB.append(ty) - - matB=numpy.array(matB) - return matB - -def getMatAA(xa, ya): - matAA=numpy.linalg.solve(getMatA(xa),getMatB(xa, ya)) - return matAA - -#设置阶数(默认为9 -def setOrder(newOrder): - order = newOrder - -#获取拟合后的新序列 -def getFitYValues(xValues, yValues, xNewValues): - matAA_get = getMatAA(xValues, yValues) - - yya=[] - - for i in range(0,len(xNewValues)): - yy=0.0 - for j in range(0,order+1): - dy=1.0 - for k in range(0,j): - dy*=xNewValues[i] - dy*=matAA_get[j] - yy+=dy - yya.append(yy) - - return yya -#画出拟合后的曲线 -#print(matAA) - -if __name__ == "__main__": - - fig = plt.figure() - ax = fig.add_subplot(111) - - #生成曲线上的各个点 - x = numpy.arange(-1,1,0.02) - y = [((a*a-1)*(a*a-1)*(a*a-1)+0.5)*numpy.sin(a*2) for a in x] - #ax.plot(x,y,color='r',linestyle='-',marker='') - #,label="(a*a-1)*(a*a-1)*(a*a-1)+0.5" - - #生成的曲线上的各个点偏移一下,并放入到xa,ya中去 - i=0 - xa=[] - ya=[] - for xx in x: - yy=y[i] - d=float(random.randint(60,140))/100 - #ax.plot([xx*d],[yy*d],color='m',linestyle='',marker='.') - i+=1 - xa.append(xx*d) - ya.append(yy*d) - - '''for i in range(0,5): - xx=float(random.randint(-100,100))/100 - yy=float(random.randint(-60,60))/100 - xa.append(xx) - ya.append(yy)''' - - ax.plot(xa,ya,color='m',linestyle='',marker='.') - - matAA_n = getMatAA(xa,ya) - print len(matAA_n) - - xxa= numpy.arange(-1,1.2,0.01) - yya= getFitYValues(xa, ya, xxa) - - ax.plot(xxa,yya,color='g',linestyle='-',marker='') - - ax.legend() +# coding=utf-8 + +''' +作者:Jairus Chan +程序:多项式曲线拟合算法 +''' +import matplotlib.pyplot as plt +import math +import numpy +import random + +#阶数为9阶 +order=9 + +#进行曲线拟合 +def getMatA(xa): + matA=[] + for i in range(0,order+1): + matA1=[] + for j in range(0,order+1): + tx=0.0 + for k in range(0,len(xa)): + dx=1.0 + for l in range(0,j+i): + dx=dx*xa[k] + tx+=dx + matA1.append(tx) + matA.append(matA1) + + matA=numpy.array(matA) + return matA + +def getMatB(xa,ya): + matB=[] + for i in range(0,order+1): + ty=0.0 + for k in range(0,len(xa)): + dy=1.0 + for l in range(0,i): + dy=dy*xa[k] + ty+=ya[k]*dy + matB.append(ty) + + matB=numpy.array(matB) + return matB + +def getMatAA(xa, ya): + matAA=numpy.linalg.solve(getMatA(xa),getMatB(xa, ya)) + return matAA + +#设置阶数(默认为9 +def setOrder(newOrder): + order = newOrder + +#获取拟合后的新序列 +def getFitYValues(xValues, yValues, xNewValues): + matAA_get = getMatAA(xValues, yValues) + + yya=[] + + for i in range(0,len(xNewValues)): + yy=0.0 + for j in range(0,order+1): + dy=1.0 + for k in range(0,j): + dy*=xNewValues[i] + dy*=matAA_get[j] + yy+=dy + yya.append(yy) + + return yya +#画出拟合后的曲线 +#print(matAA) + +if __name__ == "__main__": + + fig = plt.figure() + ax = fig.add_subplot(111) + + #生成曲线上的各个点 + x = numpy.arange(-1,1,0.02) + y = [((a*a-1)*(a*a-1)*(a*a-1)+0.5)*numpy.sin(a*2) for a in x] + #ax.plot(x,y,color='r',linestyle='-',marker='') + #,label="(a*a-1)*(a*a-1)*(a*a-1)+0.5" + + #生成的曲线上的各个点偏移一下,并放入到xa,ya中去 + i=0 + xa=[] + ya=[] + for xx in x: + yy=y[i] + d=float(random.randint(60,140))/100 + #ax.plot([xx*d],[yy*d],color='m',linestyle='',marker='.') + i+=1 + xa.append(xx*d) + ya.append(yy*d) + + '''for i in range(0,5): + xx=float(random.randint(-100,100))/100 + yy=float(random.randint(-60,60))/100 + xa.append(xx) + ya.append(yy)''' + + ax.plot(xa,ya,color='m',linestyle='',marker='.') + + matAA_n = getMatAA(xa,ya) + print len(matAA_n) + + xxa= numpy.arange(-1,1.2,0.01) + yya= getFitYValues(xa, ya, xxa) + + ax.plot(xxa,yya,color='g',linestyle='-',marker='') + + ax.legend() plt.show() \ No newline at end of file diff --git a/cleastsq.pyc b/cleastsq.pyc new file mode 100644 index 0000000..d93af08 Binary files /dev/null and b/cleastsq.pyc differ diff --git a/config.ini b/config.ini index c8b0736..1a29a50 100644 --- a/config.ini +++ b/config.ini @@ -1,11 +1,11 @@ - - -# 日志设置 -[log] -info_log_name=../Data/Log/info.log -error_log_name=../Data/Log/error.log - -#交易阈值 -[trade_threshold] -Threshold_Buy_Count = 3 + + +# 日志设置 +[log] +info_log_name=../Data/Log/info.log +error_log_name=../Data/Log/error.log + +#交易阈值 +[trade_threshold] +Threshold_Buy_Count = 3 Threshold_Sale_Count = 3 \ No newline at end of file diff --git a/cwavelet.py b/cwavelet.py index 2f6e6a8..3bf0db3 100644 --- a/cwavelet.py +++ b/cwavelet.py @@ -1,129 +1,129 @@ -#!/usr/local/bin/python -#coding=utf-8 - -import math -import numpy as np -import pywt -import pylab -import matplotlib.pyplot as plt -import cleastsq -import copy - -#固定阈值准则 (sqtwolog) -def threshold_sqtwolog(n): - return math.sqrt(2*math.log(n)) - -#软阈值处理函数 -def softThreshold(thr, values): - newValues = [] - for value in values: - if math.fabs(value) <= thr: - value = 0 - elif value > thr: - value -= thr - else: - value += thr - newValues.append(value) - return newValues - -def getWaveletData(values, waveletName, level, threadMethodName): - mode = 'sym' - #小波系数分解 - data = pywt.wavedec(values, waveletName, mode, level) - #cA4, cD4, cD3, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) - coeffs = [] #小波重构系数 - #阈值处理 - if threadMethodName == 'sqtwolog': - #print len(cA4), len(cD4), len(cD3), len(cD2), len(cD1),len(values) - for i in np.arange(0, len(data)): - if i > 0: - data[i] = softThreshold(threshold_sqtwolog(len(data[i])), data[i]) - coeffs.append(data[i]) - #小波重构 - zValues = pywt.waverec(coeffs, waveletName, mode) - -# if level == 4: -# #cA4, cD4, cD3, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) -# coeffs = [] -# #阈值处理 -# if threadMethodName == 'sqtwolog': -# #print len(cA4), len(cD4), len(cD3), len(cD2), len(cD1),len(values) -# # cD4 = softThreshold(threshold_sqtwolog(len(cD4)), cD4) -# # cD3 = softThreshold(threshold_sqtwolog(len(cD3)), cD3) -# # cD2 = softThreshold(threshold_sqtwolog(len(cD2)), cD2) -# # cD1 = softThreshold(threshold_sqtwolog(len(cD1)), cD1) -# #小波重构 -# #coeffs = [cA4, cD4, cD3, cD2, cD1] -# zValues = pywt.waverec(coeffs, waveletName, mode) -# elif level ==2: -# cA2, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) -# #阈值处理 -# if threadMethodName == 'sqtwolog': -# print len(cA2), len(cD2), len(cD1),len(values) -# cD2 = softThreshold(threshold_sqtwolog(len(cD2)), cD2) -# cD1 = softThreshold(threshold_sqtwolog(len(cD1)), cD1) -# #小波重构 -# coeffs = [cA2, cD2, cD1] -# zValues = pywt.waverec(coeffs, waveletName, mode) - return zValues - -#小波包分解 -# forecastCount:预测的点位数 -def getWavePacketData(values, waveletName, level, forecastCount): - wp = pywt.WaveletPacket(data=values, wavelet=waveletName, mode='sym', maxlevel=level) - print waveletName, ":", wp.maxlevel - #nodes = wp.get_level(level) - #labels = [n.path for n in nodes] - #values = pylab.array([n.data for n in nodes], 'd') - #print labels - #print [n.data for n in nodes] - #print [node.path for node in wp.get_leaf_nodes(decompose=False)] - #print [node.path for node in wp.get_leaf_nodes(decompose=True)] - coeffs = [(node.path, node.data) for node in wp.get_leaf_nodes(decompose=True)] - #print coeffs - for node in wp.get_leaf_nodes(decompose=True): - print node.path, len(node.data) - - - coeffsNew = [] - for path, data in coeffs: - data = cleastsq.getFitYValues(range(len(data)), data, range(len(data)+forecastCount)) - coeffsNew.append((path, data)) - - #print coeffsNew - - wp2 = pywt.WaveletPacket(None, waveletName, maxlevel=level) - for path, data in coeffsNew: - wp2[path] = data - - #print wp["a"] - #print [node.path for node in wp2.get_leaf_nodes(decompose=False)] - value2s= wp2.reconstruct(update=True) - newLen = len(values)+forecastCount - print newLen - return value2s[:newLen] - -# print len(value2s) -# value2s_n= wp2.reconstruct(update=False) -# plt.plot(range(18), value2s[0:18], color="b", linewidth=1) -# #plt.plot(range(len(value2s_n)), value2s_n, color="r", linewidth=1) -# plt.xlabel("Time") -# plt.ylabel("Price") -# plt.grid() -# plt.legend() -# plt.show() - -# print wp['a'].data -# print wp['d'].data -# print wp['add'].data -# print wp['ada'].data -# print [node.path for node in wp.get_level(3, 'freq')] - - -if __name__ == '__main__': - values = range(16) - plt.plot(values) - for i in np.arange(4,5): - name = "db"+str(i) - print getWavePacketData(values, name, 3, 3) +#!/usr/local/bin/python +#coding=utf-8 + +import math +import numpy as np +import pywt +import pylab +import matplotlib.pyplot as plt +import cleastsq +import copy + +#固定阈值准则 (sqtwolog) +def threshold_sqtwolog(n): + return math.sqrt(2*math.log(n)) + +#软阈值处理函数 +def softThreshold(thr, values): + newValues = [] + for value in values: + if math.fabs(value) <= thr: + value = 0 + elif value > thr: + value -= thr + else: + value += thr + newValues.append(value) + return newValues + +def getWaveletData(values, waveletName, level, threadMethodName): + mode = 'sym' + #小波系数分解 + data = pywt.wavedec(values, waveletName, mode, level) + #cA4, cD4, cD3, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) + coeffs = [] #小波重构系数 + #阈值处理 + if threadMethodName == 'sqtwolog': + #print len(cA4), len(cD4), len(cD3), len(cD2), len(cD1),len(values) + for i in np.arange(0, len(data)): + if i > 0: + data[i] = softThreshold(threshold_sqtwolog(len(data[i])), data[i]) + coeffs.append(data[i]) + #小波重构 + zValues = pywt.waverec(coeffs, waveletName, mode) + +# if level == 4: +# #cA4, cD4, cD3, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) +# coeffs = [] +# #阈值处理 +# if threadMethodName == 'sqtwolog': +# #print len(cA4), len(cD4), len(cD3), len(cD2), len(cD1),len(values) +# # cD4 = softThreshold(threshold_sqtwolog(len(cD4)), cD4) +# # cD3 = softThreshold(threshold_sqtwolog(len(cD3)), cD3) +# # cD2 = softThreshold(threshold_sqtwolog(len(cD2)), cD2) +# # cD1 = softThreshold(threshold_sqtwolog(len(cD1)), cD1) +# #小波重构 +# #coeffs = [cA4, cD4, cD3, cD2, cD1] +# zValues = pywt.waverec(coeffs, waveletName, mode) +# elif level ==2: +# cA2, cD2, cD1 = pywt.wavedec(values, waveletName, mode, level) +# #阈值处理 +# if threadMethodName == 'sqtwolog': +# print len(cA2), len(cD2), len(cD1),len(values) +# cD2 = softThreshold(threshold_sqtwolog(len(cD2)), cD2) +# cD1 = softThreshold(threshold_sqtwolog(len(cD1)), cD1) +# #小波重构 +# coeffs = [cA2, cD2, cD1] +# zValues = pywt.waverec(coeffs, waveletName, mode) + return zValues + +#小波包分解 +# forecastCount:预测的点位数 +def getWavePacketData(values, waveletName, level, forecastCount): + wp = pywt.WaveletPacket(data=values, wavelet=waveletName, mode='sym', maxlevel=level) + print waveletName, ":", wp.maxlevel + #nodes = wp.get_level(level) + #labels = [n.path for n in nodes] + #values = pylab.array([n.data for n in nodes], 'd') + #print labels + #print [n.data for n in nodes] + #print [node.path for node in wp.get_leaf_nodes(decompose=False)] + #print [node.path for node in wp.get_leaf_nodes(decompose=True)] + coeffs = [(node.path, node.data) for node in wp.get_leaf_nodes(decompose=True)] + #print coeffs + for node in wp.get_leaf_nodes(decompose=True): + print node.path, len(node.data) + + + coeffsNew = [] + for path, data in coeffs: + data = cleastsq.getFitYValues(range(len(data)), data, range(len(data)+forecastCount)) + coeffsNew.append((path, data)) + + #print coeffsNew + + wp2 = pywt.WaveletPacket(None, waveletName, maxlevel=level) + for path, data in coeffsNew: + wp2[path] = data + + #print wp["a"] + #print [node.path for node in wp2.get_leaf_nodes(decompose=False)] + value2s= wp2.reconstruct(update=True) + newLen = len(values)+forecastCount + print newLen + return value2s[:newLen] + +# print len(value2s) +# value2s_n= wp2.reconstruct(update=False) +# plt.plot(range(18), value2s[0:18], color="b", linewidth=1) +# #plt.plot(range(len(value2s_n)), value2s_n, color="r", linewidth=1) +# plt.xlabel("Time") +# plt.ylabel("Price") +# plt.grid() +# plt.legend() +# plt.show() + +# print wp['a'].data +# print wp['d'].data +# print wp['add'].data +# print wp['ada'].data +# print [node.path for node in wp.get_level(3, 'freq')] + + +if __name__ == '__main__': + values = range(16) + plt.plot(values) + for i in np.arange(4,5): + name = "db"+str(i) + print getWavePacketData(values, name, 3, 3) plt.plot(values) \ No newline at end of file diff --git a/cwavelet.pyc b/cwavelet.pyc new file mode 100644 index 0000000..db0000b Binary files /dev/null and b/cwavelet.pyc differ diff --git a/data_process/Stock.py b/data_process/Stock.py index b7118e3..5afdb39 100644 --- a/data_process/Stock.py +++ b/data_process/Stock.py @@ -1,89 +1,89 @@ -#!/usr/local/bin/python -#coding=utf-8 - -from datetime import date - -from util.codeConvert import * -from init import * - -stockNameList = [('600000', '浦发银行'), \ - ('600048', '保利地产'), \ - ('600011', '华能国际'),\ - ('002600', '江粉磁材'),\ - ('002505', '大康牧业'),\ - ('000725', '京东方A'),\ - ('000783', '长江证券'),\ - ('300315', '掌趣科技'),\ - ('002167', '东方锆业'),\ - ('601001', '大同煤业'),\ - ('150172', '证券B')] - -class Stock: - name = '' #股票名,中文 - code = '' #股票代码 - open = 0.0 #今日开盘价 - close = 0.0 #昨日收盘价 - current = 0.0 #当前价 - high = 0.0 #今日最高价 - low = 0.0 #今日最低价 - buyFiveInfo = [] #五档买入:[(买一报价,买一申请数),买二...] - saleFiveInfo = [] #五档卖出:(卖一报价,卖一申请数),卖二... - dealAmount = 0 #成交股数/100,N手 - dealTurnover = 0 #成交金额 - date = date.today() #日期 - time = time.localtime(time.time()) #时间 - - signal = 0 - - #构造函数 - def __init__(self, sinaStockInfo=''): - - if len(sinaStockInfo) >= 32: - self.name = sinaStockInfo[0] - self.code = self.find_in_list(self.name) - self.open = sinaStockInfo[1] - self.close = sinaStockInfo[2] - self.current = sinaStockInfo[3] - self.high = sinaStockInfo[4] - self.low = sinaStockInfo[5] - self.dealAmount = sinaStockInfo[8] - self.dealTurnover = sinaStockInfo[9] - self.date = sinaStockInfo[30] - self.time = sinaStockInfo[31] - self.buyFiveInfo = [(sinaStockInfo[11], sinaStockInfo[10]),\ - (sinaStockInfo[13], sinaStockInfo[12]),\ - (sinaStockInfo[15], sinaStockInfo[14]),\ - (sinaStockInfo[17], sinaStockInfo[16]),\ - (sinaStockInfo[19], sinaStockInfo[18])] - self.saleFiveInfo = [(sinaStockInfo[21], sinaStockInfo[20]),\ - (sinaStockInfo[23], sinaStockInfo[22]),\ - (sinaStockInfo[25], sinaStockInfo[24]),\ - (sinaStockInfo[27], sinaStockInfo[26]),\ - (sinaStockInfo[29], sinaStockInfo[28])] - - def find_in_list(self, name): - try: - for i in range(0, len(stockNameList)): - if name == stockNameList[i][1]: - return stockNameList[i][0] - except Exception as e: - print "find_in_list() Exception:", str(e) - finally: - None - return '' - - def __str__(self): - try: - s = '%s\t%s\t%s\t%0.3f' % (self.name, self.code, str(self.current), (float(self.current)-float(self.close))/float(self.close)*100) - s = s + '%' - #str = '%s %s %s ' % (self.name, self.code, str(self.current)) - #str = str + str((float(self.current)-float(self.close))/float(self.close)*100) + '%' - return s - except Exception,e: - errorLogger.logger.error(str(e)) - return '' - - def str_print(self): - return self.__str__() - +#!/usr/local/bin/python +#coding=utf-8 + +from datetime import date + +from util.codeConvert import * +from init import * + +stockNameList = [('600000', '浦发银行'), \ + ('600048', '保利地产'), \ + ('600011', '华能国际'),\ + ('002600', '江粉磁材'),\ + ('002505', '大康牧业'),\ + ('000725', '京东方A'),\ + ('000783', '长江证券'),\ + ('300315', '掌趣科技'),\ + ('002167', '东方锆业'),\ + ('601001', '大同煤业'),\ + ('150172', '证券B')] + +class Stock: + name = '' #股票名,中文 + code = '' #股票代码 + open = 0.0 #今日开盘价 + close = 0.0 #昨日收盘价 + current = 0.0 #当前价 + high = 0.0 #今日最高价 + low = 0.0 #今日最低价 + buyFiveInfo = [] #五档买入:[(买一报价,买一申请数),买二...] + saleFiveInfo = [] #五档卖出:(卖一报价,卖一申请数),卖二... + dealAmount = 0 #成交股数/100,N手 + dealTurnover = 0 #成交金额 + date = date.today() #日期 + time = time.localtime(time.time()) #时间 + + signal = 0 + + #构造函数 + def __init__(self, sinaStockInfo=''): + + if len(sinaStockInfo) >= 32: + self.name = sinaStockInfo[0] + self.code = self.find_in_list(self.name) + self.open = sinaStockInfo[1] + self.close = sinaStockInfo[2] + self.current = sinaStockInfo[3] + self.high = sinaStockInfo[4] + self.low = sinaStockInfo[5] + self.dealAmount = sinaStockInfo[8] + self.dealTurnover = sinaStockInfo[9] + self.date = sinaStockInfo[30] + self.time = sinaStockInfo[31] + self.buyFiveInfo = [(sinaStockInfo[11], sinaStockInfo[10]),\ + (sinaStockInfo[13], sinaStockInfo[12]),\ + (sinaStockInfo[15], sinaStockInfo[14]),\ + (sinaStockInfo[17], sinaStockInfo[16]),\ + (sinaStockInfo[19], sinaStockInfo[18])] + self.saleFiveInfo = [(sinaStockInfo[21], sinaStockInfo[20]),\ + (sinaStockInfo[23], sinaStockInfo[22]),\ + (sinaStockInfo[25], sinaStockInfo[24]),\ + (sinaStockInfo[27], sinaStockInfo[26]),\ + (sinaStockInfo[29], sinaStockInfo[28])] + + def find_in_list(self, name): + try: + for i in range(0, len(stockNameList)): + if name == stockNameList[i][1]: + return stockNameList[i][0] + except Exception as e: + print "find_in_list() Exception:", str(e) + finally: + None + return '' + + def __str__(self): + try: + s = '%s\t%s\t%s\t%0.3f' % (self.name, self.code, str(self.current), (float(self.current)-float(self.close))/float(self.close)*100) + s = s + '%' + #str = '%s %s %s ' % (self.name, self.code, str(self.current)) + #str = str + str((float(self.current)-float(self.close))/float(self.close)*100) + '%' + return s + except Exception,e: + errorLogger.logger.error(str(e)) + return '' + + def str_print(self): + return self.__str__() + \ No newline at end of file diff --git a/data_process/Stock.pyc b/data_process/Stock.pyc new file mode 100644 index 0000000..78d4204 Binary files /dev/null and b/data_process/Stock.pyc differ diff --git a/data_process/__init__.py b/data_process/__init__.py index 04acb8f..3f3d417 100644 --- a/data_process/__init__.py +++ b/data_process/__init__.py @@ -1,5 +1,5 @@ -from data_process.Stock import * -from data_process.online_data import * -from data_process.native_data import * -from data_process.download_stock import * - +# from data_process.Stock import * +# from data_process.online_data import * +# from data_process.native_data import * +# from data_process.download_stock import * + diff --git a/data_process/__init__.pyc b/data_process/__init__.pyc new file mode 100644 index 0000000..1503760 Binary files /dev/null and b/data_process/__init__.pyc differ diff --git a/data_process/dataDownloadByDongfangcf.py b/data_process/dataDownloadByDongfangcf.py new file mode 100644 index 0000000..12d93c6 --- /dev/null +++ b/data_process/dataDownloadByDongfangcf.py @@ -0,0 +1,178 @@ +#ecoding:utf-8 +# 导入需要使用到的模块 +import urllib +import re +import pandas as pd +import pymysql +import os,datetime,time + + +# 爬虫抓取网页函数 +def getHtml(url): + html = urllib.urlopen(url).read() + html = html.decode('gbk') + return html + + +# 抓取网页股票代码函数 +def getStackCode(html): + s = r'
  • ' + pat = re.compile(s) + code = pat.findall(html) + return code +def downlaodDataBycode(code,jj): + #########################开始干活############################ + Url = 'http://quote.eastmoney.com/stocklist.html' # 东方财富网股票数据连接地址 + filepath = './stockdata/dongfangcf/' # 定义数据文件保存路径 + # 实施抓取 + # code = getStackCode(getHtml(Url)) + # 获取所有股票代码(以6开头的,应该是沪市数据)集合 + # CodeList = [] + # for item in code: + # if item[0] == '6': + # CodeList.append(item) + file={'stockcodewangyiShangz.txt':0,'stockcodewangyiShenz.txt':1} #'stockcodewangyiqdii.txt':'','stockcodewangyidetail.txt':'' + # + # CodeList = [] + # stockTxtNewPath =os.path.pardir + "/stockdata/" + jj + # file_to_read = open(stockTxtNewPath, 'r') + # lines = file_to_read.readlines() # 整行读取数据 + # if not lines: + # pass + # else: + # for line in lines: + # if line != '\n'and line!=' ': + # if jj=='stockcodewangyidetail.txt': + # icode=line.split(' ') + # else: + # icode = line.split('\t') + # CodeList.append(icode[1]) + # 抓取数据并保存到本地csv文件 + # for code in CodeList: + if not ' 'in code: + print(u'正在获取股票%s数据' % code) + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y%m%d') + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=365) + strsdate = datetime.datetime.strftime(sdatetime, '%Y%m%d') + url = 'http://quotes.money.163.com/service/chddata.html?code='+str(file[jj]) + code + \ + '&start='+str(strsdate)+'&end='+str(strtoday)+'&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP' + print url + # if jj=='stockcodewangyiqdii.txt': + # print code + time.sleep(0.1) + urllib.urlretrieve(url, filepath + code + '.csv') + return filepath + code + '.csv' +def downlaodData(): + #########################开始干活############################ + Url = 'http://quote.eastmoney.com/stocklist.html' # 东方财富网股票数据连接地址 + filepath =os.path.pardir + '/stockdata/dongfangcf/' # 定义数据文件保存路径 + # 实施抓取 + # code = getStackCode(getHtml(Url)) + # 获取所有股票代码(以6开头的,应该是沪市数据)集合 + # CodeList = [] + # for item in code: + # if item[0] == '6': + # CodeList.append(item) + file={'stockcodewangyiShangz.txt':0,'stockcodewangyiShenz.txt':1} #'stockcodewangyiqdii.txt':'','stockcodewangyidetail.txt':'' + for jj in file: + CodeList = [] + stockTxtNewPath =os.path.pardir + "../stockdata/" + jj + file_to_read = open(stockTxtNewPath, 'r') + lines = file_to_read.readlines() # 整行读取数据 + if not lines: + pass + else: + for line in lines: + if line != '\n'and line!=' ': + if jj=='stockcodewangyidetail.txt': + icode=line.split(' ') + else: + icode = line.split('\t') + CodeList.append(icode[1]) + # 抓取数据并保存到本地csv文件 + for code in CodeList: + if not ' 'in code: + print(u'正在获取股票%s数据' % code) + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y%m%d') + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=365) + strsdate = datetime.datetime.strftime(sdatetime, '%Y%m%d') + url = 'http://quotes.money.163.com/service/chddata.html?code='+str(file[jj]) + code + \ + '&start='+str(strsdate)+'&end='+str(strtoday)+'&fields=TCLOSE;HIGH;LOW;TOPEN;LCLOSE;CHG;PCHG;TURNOVER;VOTURNOVER;VATURNOVER;TCAP;MCAP' + print url + if jj=='stockcodewangyiqdii.txt': + print code + time.sleep(0.1) + urllib.urlretrieve(url, filepath + code + '.csv') + # stockdata=urllib.urlopen(url) + # print (stockdata) +if __name__ == '__main__': + + downlaodData() + filepath = os.path.pardir + '/stockdata/dongfangcf/' + ##########################将股票数据存入数据库########################### + # 数据库名称和密码 + name = 'xxxx' + password = 'xxxx' # 替换为自己的账户名和密码 + # 建立本地数据库连接(需要先开启数据库服务) + db = pymysql.connect('localhost', name, password, charset='utf8') + cursor = db.cursor() + # 创建数据库stockDataBase + sqlSentence1 = "create database stockDataBase" + cursor.execute(sqlSentence1) # 选择使用当前数据库 + sqlSentence2 = "use stockDataBase;" + cursor.execute(sqlSentence2) + + # 获取本地文件列表 + fileList = os.listdir(filepath) + # 依次对每个数据文件进行存储 + for fileName in fileList: + data = pd.read_csv(filepath + fileName, encoding="gbk") + # 创建数据表,如果数据表已经存在,会跳过继续执行下面的步骤print('创建数据表stock_%s'% fileName[0:6]) + try: + sqlSentence3 = "create table stock_%s" % fileName[0:6] + "(日期 date, 股票代码 VARCHAR(10), 名称 VARCHAR(10),\ + 收盘价 float, 最高价 float, 最低价 float, 开盘价 float, 前收盘 float, 涨跌额 float, \ + 涨跌幅 float, 换手率 float, 成交量 bigint, 成交金额 bigint, 总市值 bigint, 流通市值 bigint)" + cursor.execute(sqlSentence3) + except: + print('数据表已存在!') + + # 迭代读取表中每行数据,依次存储(整表存储还没尝试过) + print('正在存储stock_%s' % fileName[0:6]) + length = len(data) + for i in range(0, length): + record = tuple(data.loc[i]) + # 插入数据语句 + try: + sqlSentence4 = "insert into stock_%s" % fileName[0:6] + "(日期, 股票代码, 名称, 收盘价, 最高价, 最低价, 开盘价,\ + 前收盘, 涨跌额, 涨跌幅, 换手率, 成交量, 成交金额, 总市值, 流通市值) \ + values ('%s',%s','%s',%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)" % record + # 获取的表中数据很乱,包含缺失值、Nnone、none等,插入数据库需要处理成空值 + sqlSentence4 = sqlSentence4.replace('nan', 'null').replace('None', 'null').replace('none', 'null') + cursor.execute(sqlSentence4) + except: + # 如果以上插入过程出错,跳过这条数据记录,继续往下进行 + break + + # 关闭游标,提交,关闭数据库连接 + cursor.close() + db.commit() + db.close() + + ###########################查询刚才操作的成果################################## + + # 重新建立数据库连接 + db = pymysql.connect('localhost', name, password, 'stockDataBase') + cursor = db.cursor() + # 查询数据库并打印内容 + cursor.execute('select * from stock_600000') + results = cursor.fetchall() + for row in results: + print(row) + # 关闭 + cursor.close() + db.commit() + db.close() \ No newline at end of file diff --git a/data_process/data_calcute.py b/data_process/data_calcute.py index dcdad5f..30d7fba 100644 --- a/data_process/data_calcute.py +++ b/data_process/data_calcute.py @@ -1,155 +1,157 @@ -#coding=utf-8 - -__author__ = 'cbb' - -import sys -sys.path.append('C:\Code\stock-master') -reload(sys) -sys.setdefaultencoding('utf-8') - -import MySQLdb -import numpy as np -import pandas as pd -import datetime -from tqdm import tqdm -from multiprocessing.dummy import Pool as ThreadPool -import wrapcache - -from data_get import * - - - - - - - -#计算均线 -def calcute_ma_all(): - codes = get_all_stock_codes() - # for code in tqdm(codes): - # _calcute_ma(code) - - pool = ThreadPool(processes=4) - pool.map(_calcute_ma, codes) - pool.close() - pool.join() - -# date_start:'2015-01-01' -# date_end: '2015-10-12' -def _calcute_ma(code, date_start='', date_end='', is_calcute_lastest=False): - try: - df = get_stock_k_line_if_ma_is_null(code) - if df is None: - return - close_prices = df['close'].get_values() - - print str(code) + ' ' + 'calcute ma' - ma_short = pd.rolling_mean(close_prices, AVR_SHORT) #12 - ma_long = pd.rolling_mean(close_prices, AVR_LONG) #40 - - df[ 'ma_' + str(AVR_SHORT)] = ma_short - df['ma_' + str(AVR_LONG)] = ma_long - - print str(code) + ' ' + 'calcute ema' - ema_short = pd.ewma(close_prices, span=AVR_SHORT) #12 - ema_long = pd.ewma(close_prices, span=AVR_LONG) #40 - - df['ema_'+str(AVR_SHORT)] = ema_short - df['ema_'+str(AVR_LONG)] = ema_long - - df = df.replace(np.nan, 0) - - #写数据库 - - # 增加列 - table_name =STOCK_KLINE_TABLE - ma_s = 'ma_' + str(AVR_SHORT) - ma_l = 'ma_' + str(AVR_LONG) - ema_s = 'ema_' + str(AVR_SHORT) - ema_l = 'ema_' + str(AVR_LONG) - # try: - # sql = "alter table %s add %s double" % (table_name, ma_s) - # engine.execute(sql) - # sql = "alter table %s add %s double" % (table_name, ma_l) - # engine.execute(sql) - # sql = "alter table %s add %s double" % (table_name, ema_s) - # engine.execute(sql) - # sql = "alter table %s add %s double" % (table_name, ema_l) - # engine.execute(sql) - # except Exception, e: - # str_error = 'column exists' - # print '' - - # 按由近到远的顺序排序 - df = df.sort_index(by='date', ascending=False) - - count = 0 - - #更新数据 - for ix, row in df.iterrows(): - print row - if row[ma_l] == 0 or row[ema_l] == 0: - continue - - sql_update = "update %s set %s=%f,%s=%f,%s=%f,%s=%f where date='%s' and %s='%s'" % \ - (table_name, ma_s, row[ma_s], ma_l, row[ma_l], - ema_s, row[ema_s], ema_l,row[ema_l], \ - row['date'], KEY_CODE, code) - print sql_update - engine.execute(sql_update) - print table_name + ' ' + str(row['date']) - - count = count+1 - #只计算最后1个收盘 - if is_calcute_lastest and count >= 7: - break - - except Exception, e: - print (str(code)+":"+date_start+" ~ "+date_end+str(e)) - -# 计算最近日期的均线 -def calcute_ma_lastest_all(): - codes = get_all_stock_codes() - - for code in codes: - _calcute_ma_lastest(code) - -# 计算最近日期的均线 (单个) -def _calcute_ma_lastest(code): - - d_avr_long = datetime.date.today() + datetime.timedelta(days=-180) - d_today = datetime.date.today() - date_start = d_avr_long.strftime('%Y-%m-%d') - date_end = d_today.strftime('%Y-%m-%d') - - _calcute_ma(code, date_start, date_end, True) - -@wrapcache.wrapcache(timeout=6*60*60) -def calcute_ma(df, avr_short=12, avr_long=40): - """ - 计算ma, ema - :param df: - :return: - """ - if len(df) == 0: - return - - # print "{} calcute ma".format(df.ix[0,'code']) - df['ma_' + str(avr_short)] = pd.rolling_mean(df['close'], avr_short) # 12 - df['ma_' + str(avr_long)] = pd.rolling_mean(df['close'], avr_long) # 40 - - - # print "{} calcute ema".format(df.ix[0, 'code']) - df['ema_' + str(avr_short)] = pd.ewma(df['close'], span=avr_short) # 12 - df['ema_' + str(avr_long)] = pd.ewma(df['close'], span=avr_long) # 40 - - df = df.replace(np.nan, 0) - return df - - - -if __name__ == "__main__": - #_calcute_ma('600000', '2015-01-01', '2015-10-14', True) - calcute_ma_all() - #calcute_ma_lastest_all() +#coding=utf-8 +__author__ = 'cbb' + +import sys +sys.path.append('C:\Code\stock-master') +reload(sys) +sys.setdefaultencoding('utf-8') + +# import MySQLdb +import pymysql +import numpy as np +import pandas as pd +import datetime +from tqdm import tqdm +from multiprocessing.dummy import Pool as ThreadPool +import wrapcache +from data_get import * + +ChinaStockIndexList = [ + "000001", # sh000001 上证指数 + "399001", # sz399001 深证成指 + "000300", # sh000300 沪深300 + "399005", # sz399005 中小板指 + "399006", # sz399006 创业板指 + "000003",# sh000003 B股指数 + "000016",#上证50 + "000012",#国债指数 +] + +#计算均线 +def calcute_ma_all(): + # codes = get_all_stock_codes() + # for code in tqdm(codes): + # _calcute_ma(code) + + pool = ThreadPool(processes=4) + pool.map(_calcute_ma, ChinaStockIndexList) + pool.close() + pool.join() + +# date_start:'2015-01-01' +# date_end: '2015-10-12' +def _calcute_ma(code, date_start='', date_end='', is_calcute_lastest=False): + try: + df = get_stock_k_line_if_ma_is_null(code) + if df is None: + return + close_prices = df['close'].get_values() + + print str(code) + ' ' + 'calcute ma' + ma_short = pd.rolling_mean(close_prices, AVR_SHORT) #12 + ma_long = pd.rolling_mean(close_prices, AVR_LONG) #40 + + df[ 'ma_' + str(AVR_SHORT)] = ma_short + df['ma_' + str(AVR_LONG)] = ma_long + + print str(code) + ' ' + 'calcute ema' + ema_short = pd.ewma(close_prices, span=AVR_SHORT) #12 + ema_long = pd.ewma(close_prices, span=AVR_LONG) #40 + + df['ema_'+str(AVR_SHORT)] = ema_short + df['ema_'+str(AVR_LONG)] = ema_long + + df = df.replace(np.nan, 0) + + #写数据库 + + # 增加列 + table_name =STOCK_KLINE_TABLE + ma_s = 'ma_' + str(AVR_SHORT) + ma_l = 'ma_' + str(AVR_LONG) + ema_s = 'ema_' + str(AVR_SHORT) + ema_l = 'ema_' + str(AVR_LONG) + # try: + # sql = "alter table %s add %s double" % (table_name, ma_s) + # engine.execute(sql) + # sql = "alter table %s add %s double" % (table_name, ma_l) + # engine.execute(sql) + # sql = "alter table %s add %s double" % (table_name, ema_s) + # engine.execute(sql) + # sql = "alter table %s add %s double" % (table_name, ema_l) + # engine.execute(sql) + # except Exception, e: + # str_error = 'column exists' + # print '' + + # 按由近到远的顺序排序 + df = df.sort_index(by='date', ascending=False) + + count = 0 + + #更新数据 + for ix, row in df.iterrows(): + print row + if row[ma_l] == 0 or row[ema_l] == 0: + continue + + sql_update = "update %s set %s=%f,%s=%f,%s=%f,%s=%f where date='%s' and %s='%s'" % \ + (table_name, ma_s, row[ma_s], ma_l, row[ma_l], + ema_s, row[ema_s], ema_l,row[ema_l], \ + row['date'], KEY_CODE, code) + print sql_update + engine.execute(sql_update) + print table_name + ' ' + str(row['date']) + + count = count+1 + #只计算最后1个收盘 + if is_calcute_lastest and count >= 7: + break + except Exception, e: + print (str(code)+":"+date_start+" ~ "+date_end+str(e)) + +# 计算最近日期的均线 +def calcute_ma_lastest_all(): + codes = get_all_stock_codes() + + for code in ChinaStockIndexList: + _calcute_ma_lastest(code) + +# 计算最近日期的均线 (单个) +def _calcute_ma_lastest(code): + + d_avr_long = datetime.date.today() + datetime.timedelta(days=-180) + d_today = datetime.date.today() + date_start = d_avr_long.strftime('%Y-%m-%d') + date_end = d_today.strftime('%Y-%m-%d') + _calcute_ma(code, date_start, date_end, True) + +@wrapcache.wrapcache(timeout=6*60*60) +def calcute_ma(df, avr_short=12, avr_long=40): + """ + 计算ma, ema + :param df: + :return: + """ + if len(df) == 0: + return + + # print "{} calcute ma".format(df.ix[0,'code']) + df['ma_' + str(avr_short)] = pd.rolling_mean(df['close'], avr_short) # 12 + df['ma_' + str(avr_long)] = pd.rolling_mean(df['close'], avr_long) # 40 + + + # print "{} calcute ema".format(df.ix[0, 'code']) + df['ema_' + str(avr_short)] = pd.ewma(df['close'], span=avr_short) # 12 + df['ema_' + str(avr_long)] = pd.ewma(df['close'], span=avr_long) # 40 + + df = df.replace(np.nan, 0) + return df + + + +if __name__ == "__main__": + #_calcute_ma('600000', '2015-01-01', '2015-10-14', True) + calcute_ma_all() + #calcute_ma_lastest_all() #_calcute_ma_lastest('000033') \ No newline at end of file diff --git a/data_process/data_calcute.pyc b/data_process/data_calcute.pyc new file mode 100644 index 0000000..acbde7f Binary files /dev/null and b/data_process/data_calcute.pyc differ diff --git a/data_process/data_download.py b/data_process/data_download.py index d492f4a..41313d1 100644 --- a/data_process/data_download.py +++ b/data_process/data_download.py @@ -1,295 +1,295 @@ -#coding=utf-8 -#!/usr/local/bin/python - -import sys -sys.path.append('../') - -import tushare as ts -import pandas as pd -import datetime -from multiprocessing.dummy import Pool as ThreadPool -from tushare.util import dateu as du -from tqdm import tqdm - -from util import stockutil as util - -from util.stockutil import fn_timer as fn_timer_ - -from init import * -from util.commons import * -from data_calcute import calcute_ma_all - - -################################### -#-- 获取股票基本信息 --# -############################ -def download_stock_basic_info(): - - try: - df = ts.get_stock_basics() - - print df.columns - df[KEY_CODE] = df.index - df = df[[KEY_CODE,KEY_NAME, KEY_INDUSTRY, KEY_AREA, KEY_TimeToMarket]] - - print df.columns - print df.head() - - sql = 'select code from {}'.format(STOCK_BASIC_TABLE) - df_code = pd.read_sql(sql, engine) - df = df[df['code'].apply(lambda x : not x in df_code['code'].get_values())] - print df.head() - print len(df) - if len(df): - df.to_sql(STOCK_BASIC_TABLE, engine, if_exists='append', index=False) - - # 添加指数 - # indexs = [('sh', '上证指数', '指数','全国','19910715'), - # ('sz', '深圳成指', '指数','全国','19940720'), - # ('hs300', '沪深300指数', '指数','全国','20050408'), - # ('sz50', '上证50指数', '指数','全国','20040102'), - # ('zxb', '中小板指数', '指数','全国','20050607'), - # ('cyb', '创业板指数', '指数','全国','20100531'),] - # df = pd.DataFrame(indexs, columns=[KEY_CODE,KEY_NAME, KEY_INDUSTRY, KEY_AREA, KEY_TimeToMarket]) - # print df - # df.to_sql(STOCK_BASIC_TABLE, engine, if_exists='append', index=False) - - - except Exception as e: - print str(e) - - -# 下载单只股票到数据库 -def download_stock_kline_by_code(code, date_start='', date_end=datetime.datetime.now()): - - try: - # 设置日期范围 - if date_start == '': - # 取数据库最近的时间 - sql = "select MAX({0}) as {0} from {1} where {2}='{3}'".format(KEY_DATE, STOCK_KLINE_TABLE, KEY_CODE, code) - df = pd.read_sql_query(sql, engine) - if df is not None and df.ix[0, KEY_DATE] is not None: - date_start = df.ix[0, KEY_DATE] - date_start = datetime.datetime.strptime(str(date_start), "%Y-%m-%d") + datetime.timedelta(1) - date_start = date_start.strftime('%Y-%m-%d') - else: - se = get_stock_info(code) - date_start = se[KEY_TimeToMarket] - date_start = datetime.datetime.strptime(str(date_start), "%Y%m%d") - date_start = date_start.strftime('%Y-%m-%d') - - if isinstance(date_end, datetime.date): - date_end = date_end.strftime('%Y-%m-%d') - - if date_start >= date_end: - print 'Code:{0} is updated to {1}'.format(code, date_start) - return - - # 开始下载 - # 日期分隔成一年以内 - dates = pd.date_range(date_start, date_end) - df = pd.DataFrame(dates, columns=['date']) - df['year'] = df['date'].apply(lambda x : x.year) - print df.head() - - years = list(set(df['year'].get_values())) - years.sort() - - for year in years: - df1 = df[df['year']==year] - if len(df) >= 2: - date_s = str(df1['date'].get_values()[0]) - date_e = str(df1['date'].get_values()[-1]) - date_s = date_s[:10] - date_e = date_e[:10] - print 'download ' + str(code) + ' k-line >>>begin (', date_s + u' 到 ' + date_e + ')' - df_qfq = download_kline_source_select(code, date_s, date_e) - if len(df_qfq): - df_qfq.to_sql(STOCK_KLINE_TABLE, engine, if_exists='append', index=False) - print '\ndownload {} k-line to mysql finish ({} to {})'.format(code, date_s, date_e) - else: - return 'fail... , and try again' - - except Exception as e: - print str(e) - - - # return None - -# 下载源选择 -def download_kline_source_select(code, date_start, date_end): - try: - if len(code)==6: - df_qfq = ts.get_h_data(str(code), start=date_start, end=date_end) # 前复权 - df_hfq = ts.get_h_data(str(code), start=date_start, end=date_end, autype='hfq') # 后复权 - else: - # import pandas.io.data as web - # price = web.get_data_yahoo('000001.SS', '1991-07-15') - df_qfq = ts.get_hist_data(str(code), start=date_start, end=date_end) - if len(df_qfq)==0 or (len(code)==6 and len(df_hfq)==0): - return pd.DataFrame() - #if df_qfq is None: - #df_qfq = ts.get_hist_data(code, start=date_start, end=date_end) - # df_qfq = df_qfq[::-1] - df_qfq[KEY_CODE] = code - df_qfq[KEY_DATE] = df_qfq.index - - - columns = [KEY_CODE, KEY_DATE, KEY_OPEN, KEY_HIGH, KEY_CLOSE, KEY_LOW, KEY_VOLUME] - df_qfq = df_qfq[columns] - - if len(code)==6: - df_qfq['close_hfq'] = df_hfq['close'] - else: - df_qfq['close_hfq'] = df_qfq['close'] - - - print df_qfq.head() - - return df_qfq - except Exception as e: - print str(e) - return pd.DataFrame() - -# 下载股票的历史分笔数据 -# code:股票代码 -# 默认为最近3年的分笔数据 -def download_stock_quotes(code, date_start='', date_end=str(datetime.date.today())): - code = util.getSixDigitalStockCode(code) - try: - if date_start == '': - date = datetime.datetime.today().date() + datetime.timedelta(-365*3) - date_start = str(date) - - dateStart = datetime.datetime.strptime(str(date_start), "%Y-%m-%d") - - for i in range(du.diff_day(date_start, date_end)): - date = dateStart + datetime.timedelta(i) - strDate = date.strftime("%Y-%m-%d") - df = ts.get_tick_data(code, strDate) - print df - except Exception as e: - print str(e) - -####################### -## private methods ## -####################### - -# 获取个股的基本信息:股票名称,行业,地域,PE等,详细如下 -# code,代码 -# name,名称 -# industry,所属行业 -# area,地区 -# pe,市盈率 -# outstanding,流通股本 -# totals,总股本(万) -# totalAssets,总资产(万) -# liquidAssets,流动资产 -# fixedAssets,固定资产 -# reserved,公积金 -# reservedPerShare,每股公积金 -# eps,每股收益 -# bvps,每股净资 -# pb,市净率 -# timeToMarket,上市日期 -# 返回值类型:Series -def get_stock_info(code): - try: - sql = "select * from %s where %s='%s'" % (STOCK_BASIC_TABLE, KEY_CODE, code) - df = pd.read_sql_query(sql, engine) - se = df.ix[0] - except Exception as e: - print str(e) - return se - -# 获取所有股票的历史K线 -@fn_timer_ -def download_all_stock_history_k_line(): - print 'download all stock k-line start' - - try: - - df = pd.read_sql_table(STOCK_BASIC_TABLE, engine) - codes = list(df[KEY_CODE].get_values()) - print 'total stocks:{0}'.format(len(codes)) - # for code in codes: - # download_stock_kline_by_code(code) - codes = codes[::-1] - - #codes = r.lrange(INDEX_STOCK_BASIC, 0, -1) - pool = ThreadPool(processes=10) - pool.map(download_stock_kline_by_code, codes) - pool.close() - pool.join() - - except Exception as e: - print str(e) - print 'download all stock k-line finish' - - -def check_unnormal_stock_price(): - """ - 异常股价检测 - :return: - """ - sql = "select code,name from stock_basic_all" - df_code = pd.read_sql(sql, engine) - - unnormal_codes = [] - for code,name in df_code[['code','name']].get_values(): - sql = "select code, date, close, close_hfq from hq_db.stock_kline_fq where code='{}' and date >'2002-12-06' order by date asc ".format(code) - df = pd.read_sql(sql, engine) - if len(df) < 2: - continue - # print code, len(df) - df.index = df['date'] - returns_close = df['close'].pct_change() - # returns_close_hfq = df['close_hfq'].pct_change() - returns_close[0]= 0 - # returns_close_hfq[0] = 0 - - # print returns_close_hfq[:10] - - df['returns_close'] = returns_close - # df['returns_close_hfq'] = returns_close_hfq - - df1 = df[df['returns_close']==df['returns_close'].min()] - # print df1 - - #print '前复权', min(returns_close), '后复权',min(returns_close_hfq) - if returns_close.min() < -0.2: - print df1 - #先删除code对应的行情 - sql = "delete from stock_kline_fq where code='{}'".format(code) - print sql - engine.execute(sql) - #再重新取 - download_stock_kline_by_code(code) - - # print ">"*10, name, code, '前复权', returns_close.min() - unnormal_codes.append((name, code, '前复权', returns_close.min())) - # if returns_close_hfq.min() < -0.15: - # print df1 - # # print ">"*10, name, code, '后复权', returns_close_hfq.min() - # unnormal_codes.append((name, code, '后复权', returns_close_hfq.min())) - - print "\n"*5 - for un_code in unnormal_codes: - print "{}:{}\t{}\t{}".format(un_code[0], un_code[1], un_code[2], un_code[3]) - - print "total count", len(unnormal_codes) - -if __name__ == '__main__': - - download_stock_basic_info() - download_all_stock_history_k_line() - - check_unnormal_stock_price() - #calcute_ma_all() - #download_stock_kline_to_sql('000002', date_start='1991-01-29',date_end='2012-12-16') - - #convertRedisToSqlite() - - - - +#coding=utf-8 +#!/usr/local/bin/python + +import sys +sys.path.append('../') + +import tushare as ts +import pandas as pd +import datetime +from multiprocessing.dummy import Pool as ThreadPool +from tushare.util import dateu as du +from tqdm import tqdm + +from util import stockutil as util + +from util.stockutil import fn_timer as fn_timer_ + +from init import * +from util.commons import * +from data_calcute import calcute_ma_all + + +################################### +#-- 获取股票基本信息 --# +############################ +def download_stock_basic_info(): + + try: + df = ts.get_stock_basics() + + print df.columns + df[KEY_CODE] = df.index + df = df[[KEY_CODE,KEY_NAME, KEY_INDUSTRY, KEY_AREA, KEY_TimeToMarket]] + + print df.columns + print df.head() + + sql = 'select code from {}'.format(STOCK_BASIC_TABLE) + df_code = pd.read_sql(sql, engine) + df = df[df['code'].apply(lambda x : not x in df_code['code'].get_values())] + print df.head() + print len(df) + if len(df): + df.to_sql(STOCK_BASIC_TABLE, engine, if_exists='append', index=False) + + # 添加指数 + # indexs = [('sh', '上证指数', '指数','全国','19910715'), + # ('sz', '深圳成指', '指数','全国','19940720'), + # ('hs300', '沪深300指数', '指数','全国','20050408'), + # ('sz50', '上证50指数', '指数','全国','20040102'), + # ('zxb', '中小板指数', '指数','全国','20050607'), + # ('cyb', '创业板指数', '指数','全国','20100531'),] + # df = pd.DataFrame(indexs, columns=[KEY_CODE,KEY_NAME, KEY_INDUSTRY, KEY_AREA, KEY_TimeToMarket]) + # print df + # df.to_sql(STOCK_BASIC_TABLE, engine, if_exists='append', index=False) + + + except Exception as e: + print str(e) + + +# 下载单只股票到数据库 +def download_stock_kline_by_code(code, date_start='', date_end=datetime.datetime.now()): + + try: + # 设置日期范围 + if date_start == '': + # 取数据库最近的时间 + sql = "select MAX({0}) as {0} from {1} where {2}='{3}'".format(KEY_DATE, STOCK_KLINE_TABLE, KEY_CODE, code) + df = pd.read_sql_query(sql, engine) + if df is not None and df.ix[0, KEY_DATE] is not None: + date_start = df.ix[0, KEY_DATE] + date_start = datetime.datetime.strptime(str(date_start), "%Y-%m-%d") + datetime.timedelta(1) + date_start = date_start.strftime('%Y-%m-%d') + else: + se = get_stock_info(code) + date_start = se[KEY_TimeToMarket] + date_start = datetime.datetime.strptime(str(date_start), "%Y%m%d") + date_start = date_start.strftime('%Y-%m-%d') + + if isinstance(date_end, datetime.date): + date_end = date_end.strftime('%Y-%m-%d') + + if date_start >= date_end: + print 'Code:{0} is updated to {1}'.format(code, date_start) + return + + # 开始下载 + # 日期分隔成一年以内 + dates = pd.date_range(date_start, date_end) + df = pd.DataFrame(dates, columns=['date']) + df['year'] = df['date'].apply(lambda x : x.year) + print df.head() + + years = list(set(df['year'].get_values())) + years.sort() + + for year in years: + df1 = df[df['year']==year] + if len(df) >= 2: + date_s = str(df1['date'].get_values()[0]) + date_e = str(df1['date'].get_values()[-1]) + date_s = date_s[:10] + date_e = date_e[:10] + print 'download ' + str(code) + ' k-line >>>begin (', date_s + u' 到 ' + date_e + ')' + df_qfq = download_kline_source_select(code, date_s, date_e) + if len(df_qfq): + df_qfq.to_sql(STOCK_KLINE_TABLE, engine, if_exists='append', index=False) + print '\ndownload {} k-line to mysql finish ({} to {})'.format(code, date_s, date_e) + else: + return 'fail... , and try again' + + except Exception as e: + print str(e) + + + # return None + +# 下载源选择 +def download_kline_source_select(code, date_start, date_end): + try: + if len(code)==6: + df_qfq = ts.get_h_data(str(code), start=date_start, end=date_end) # 前复权 + df_hfq = ts.get_h_data(str(code), start=date_start, end=date_end, autype='hfq') # 后复权 + else: + # import pandas.io.data as web + # price = web.get_data_yahoo('000001.SS', '1991-07-15') + df_qfq = ts.get_hist_data(str(code), start=date_start, end=date_end) + if len(df_qfq)==0 or (len(code)==6 and len(df_hfq)==0): + return pd.DataFrame() + #if df_qfq is None: + #df_qfq = ts.get_hist_data(code, start=date_start, end=date_end) + # df_qfq = df_qfq[::-1] + df_qfq[KEY_CODE] = code + df_qfq[KEY_DATE] = df_qfq.index + + + columns = [KEY_CODE, KEY_DATE, KEY_OPEN, KEY_HIGH, KEY_CLOSE, KEY_LOW, KEY_VOLUME] + df_qfq = df_qfq[columns] + + if len(code)==6: + df_qfq['close_hfq'] = df_hfq['close'] + else: + df_qfq['close_hfq'] = df_qfq['close'] + + + print df_qfq.head() + + return df_qfq + except Exception as e: + print str(e) + return pd.DataFrame() + +# 下载股票的历史分笔数据 +# code:股票代码 +# 默认为最近3年的分笔数据 +def download_stock_quotes(code, date_start='', date_end=str(datetime.date.today())): + code = util.getSixDigitalStockCode(code) + try: + if date_start == '': + date = datetime.datetime.today().date() + datetime.timedelta(-365*3) + date_start = str(date) + + dateStart = datetime.datetime.strptime(str(date_start), "%Y-%m-%d") + + for i in range(du.diff_day(date_start, date_end)): + date = dateStart + datetime.timedelta(i) + strDate = date.strftime("%Y-%m-%d") + df = ts.get_tick_data(code, strDate) + print df + except Exception as e: + print str(e) + +####################### +## private methods ## +####################### + +# 获取个股的基本信息:股票名称,行业,地域,PE等,详细如下 +# code,代码 +# name,名称 +# industry,所属行业 +# area,地区 +# pe,市盈率 +# outstanding,流通股本 +# totals,总股本(万) +# totalAssets,总资产(万) +# liquidAssets,流动资产 +# fixedAssets,固定资产 +# reserved,公积金 +# reservedPerShare,每股公积金 +# eps,每股收益 +# bvps,每股净资 +# pb,市净率 +# timeToMarket,上市日期 +# 返回值类型:Series +def get_stock_info(code): + try: + sql = "select * from %s where %s='%s'" % (STOCK_BASIC_TABLE, KEY_CODE, code) + df = pd.read_sql_query(sql, engine) + se = df.ix[0] + except Exception as e: + print str(e) + return se + +# 获取所有股票的历史K线 +@fn_timer_ +def download_all_stock_history_k_line(): + print 'download all stock k-line start' + + try: + + df = pd.read_sql_table(STOCK_BASIC_TABLE, engine) + codes = list(df[KEY_CODE].get_values()) + print 'total stocks:{0}'.format(len(codes)) + # for code in codes: + # download_stock_kline_by_code(code) + codes = codes[::-1] + + #codes = r.lrange(INDEX_STOCK_BASIC, 0, -1) + pool = ThreadPool(processes=10) + pool.map(download_stock_kline_by_code, codes) + pool.close() + pool.join() + + except Exception as e: + print str(e) + print 'download all stock k-line finish' + + +def check_unnormal_stock_price(): + """ + 异常股价检测 + :return: + """ + sql = "select code,name from stock_basic_all" + df_code = pd.read_sql(sql, engine) + + unnormal_codes = [] + for code,name in df_code[['code','name']].get_values(): + sql = "select code, date, close, close_hfq from hq_db.stock_kline_fq where code='{}' and date >'2002-12-06' order by date asc ".format(code) + df = pd.read_sql(sql, engine) + if len(df) < 2: + continue + # print code, len(df) + df.index = df['date'] + returns_close = df['close'].pct_change() + # returns_close_hfq = df['close_hfq'].pct_change() + returns_close[0]= 0 + # returns_close_hfq[0] = 0 + + # print returns_close_hfq[:10] + + df['returns_close'] = returns_close + # df['returns_close_hfq'] = returns_close_hfq + + df1 = df[df['returns_close']==df['returns_close'].min()] + # print df1 + + #print '前复权', min(returns_close), '后复权',min(returns_close_hfq) + if returns_close.min() < -0.2: + print df1 + #先删除code对应的行情 + sql = "delete from stock_kline_fq where code='{}'".format(code) + print sql + engine.execute(sql) + #再重新取 + download_stock_kline_by_code(code) + + # print ">"*10, name, code, '前复权', returns_close.min() + unnormal_codes.append((name, code, '前复权', returns_close.min())) + # if returns_close_hfq.min() < -0.15: + # print df1 + # # print ">"*10, name, code, '后复权', returns_close_hfq.min() + # unnormal_codes.append((name, code, '后复权', returns_close_hfq.min())) + + print "\n"*5 + for un_code in unnormal_codes: + print "{}:{}\t{}\t{}".format(un_code[0], un_code[1], un_code[2], un_code[3]) + + print "total count", len(unnormal_codes) + +if __name__ == '__main__': + + download_stock_basic_info() + download_all_stock_history_k_line() + + check_unnormal_stock_price() + #calcute_ma_all() + #download_stock_kline_to_sql('000002', date_start='1991-01-29',date_end='2012-12-16') + + #convertRedisToSqlite() + + + + diff --git a/data_process/data_get.py b/data_process/data_get.py index 99a206b..045eeb3 100644 --- a/data_process/data_get.py +++ b/data_process/data_get.py @@ -1,119 +1,119 @@ -#!/usr/local/bin/python -#coding=utf-8 - -import datetime - -import pandas as pd -import tushare as ts - -from util.stockutil import getSixDigitalStockCode -from init import * -from util.commons import * -from util.codeConvert import * -from util.helper import fn_timer -import wrapcache - - -# 获取所有股票代码 -@wrapcache.wrapcache(timeout=8*60*60) -def get_all_stock_codes(): - if DB_WAY == 'mysql': - sql = 'select %s from %s' % (KEY_CODE, STOCK_BASIC_TABLE) - df = pd.read_sql_query(sql, engine) - codes = df[KEY_CODE].get_values() - return codes - else: - return [] - - -# 获取个股K线数据 -# input: -# ->code: 股票代码 -# output: -# -> DataFrame -@wrapcache.wrapcache(timeout=8*60*60) -def get_stock_k_line(code, date_start='', date_end='', all_columns = False): - - if len(date_end) == 0: - date_end=datetime.date.today().strftime("%Y-%m-%d") - - try: - if len(date_start) == 0: - sql = "select * from {0} where {1}='{2}' and {3} <= '{4}' order by {3} asc".format( - STOCK_KLINE_TABLE, KEY_CODE, code, KEY_DATE, date_end) - else: - sql = "select * from {0} where {1}='{2}' and {3} > '{4}' and {3} <= '{5}' order by {3} asc".format( - STOCK_KLINE_TABLE, KEY_CODE, code, KEY_DATE, date_start, date_end) - - df = pd.read_sql_query(sql, engine) - return df - except Exception as e: - print str(e) - return None - -@fn_timer -def get_stock_k_line_if_ma_is_null(code): - - sql = 'SELECT min(date) as date FROM {table} where code={code} and ma_12 is NULL'.format(table=STOCK_KLINE_TABLE, code=code) - df = pd.read_sql_query(sql, engine) - - d_end=datetime.datetime.today() - #date_end =d_end.strftime('%Y-%m-%d') - if len(df) > 0: - date_start = df.ix[0, 'date'] - if date_start is None: - return None - - date_start = str(date_start)[:10] - d_start = str_to_datatime(date_start, '%Y-%m-%d') - delta = d_end - d_start - days = delta.days + AVR_LONG + 1 - - try: - sql = "select * from {table} where code='{code}' order by date desc limit {count}".format( - table=STOCK_KLINE_TABLE, code=code, count=days) - - df = pd.read_sql_query(sql, engine) - df = df.sort_index(by='date', ascending=True) - return df - except Exception as e: - print str(e) - return None - -# 获取个股的基本信息:股票名称,行业,地域,PE等,详细如下 -# code,代码 -# name,名称 -# industry,所属行业 -# area,地区 -# pe,市盈率 -# outstanding,流通股本 -# totals,总股本(万) -# totalAssets,总资产(万) -# liquidAssets,流动资产 -# fixedAssets,固定资产 -# reserved,公积金 -# reservedPerShare,每股公积金 -# eps,每股收益 -# bvps,每股净资 -# pb,市净率 -# timeToMarket,上市日期 -# 返回值类型:Series -def get_stock_info(code): - try: - #DB_WAY == 'mysql': - sql = "select * from %s where %s='%s'" % (INDEX_STOCK_BASIC,KEY_CODE, code) - df = pd.read_sql_query(sql, engine) - se = df.ix[0] - - except Exception as e: - print str(e) - se = pd.Series() - return se - -# 获取终止上市股票列表 -def get_stock_terminated(): - return ts.get_terminated() - -if __name__ == "__main__": - print get_stock_k_line('000001') +#!/usr/local/bin/python +#coding=utf-8 + +import datetime + +import pandas as pd +import tushare as ts + +from util.stockutil import getSixDigitalStockCode +from init import * +from util.commons import * +from util.codeConvert import * +from util.helper import fn_timer +import wrapcache + + +# 获取所有股票代码 +@wrapcache.wrapcache(timeout=8*60*60) +def get_all_stock_codes(): + if DB_WAY == 'mysql': + sql = 'select %s from %s' % (KEY_CODE, STOCK_BASIC_TABLE) + df = pd.read_sql_query(sql, engine) + codes = df[KEY_CODE].get_values() + return codes + else: + return [] + + +# 获取个股K线数据 +# input: +# ->code: 股票代码 +# output: +# -> DataFrame +@wrapcache.wrapcache(timeout=8*60*60) +def get_stock_k_line(code, date_start='', date_end='', all_columns = False): + + if len(date_end) == 0: + date_end=datetime.date.today().strftime("%Y-%m-%d") + + try: + if len(date_start) == 0: + sql = "select * from {0} where {1}='{2}' and {3} <= '{4}' order by {3} asc".format( + STOCK_KLINE_TABLE, KEY_CODE, code, KEY_DATE, date_end) + else: + sql = "select * from {0} where {1}='{2}' and {3} > '{4}' and {3} <= '{5}' order by {3} asc".format( + STOCK_KLINE_TABLE, KEY_CODE, code, KEY_DATE, date_start, date_end) + + df = pd.read_sql_query(sql, engine) + return df + except Exception as e: + print str(e) + return None + +@fn_timer +def get_stock_k_line_if_ma_is_null(code): + + sql = 'SELECT min(date) as date FROM {table} where code={code} and ma_12 is NULL'.format(table=STOCK_KLINE_TABLE, code=code) + df = pd.read_sql_query(sql, engine) + + d_end=datetime.datetime.today() + #date_end =d_end.strftime('%Y-%m-%d') + if len(df) > 0: + date_start = df.ix[0, 'date'] + if date_start is None: + return None + + date_start = str(date_start)[:10] + d_start = str_to_datatime(date_start, '%Y-%m-%d') + delta = d_end - d_start + days = delta.days + AVR_LONG + 1 + + try: + sql = "select * from {table} where code='{code}' order by date desc limit {count}".format( + table=STOCK_KLINE_TABLE, code=code, count=days) + + df = pd.read_sql_query(sql, engine) + df = df.sort_index(by='date', ascending=True) + return df + except Exception as e: + print str(e) + return None + +# 获取个股的基本信息:股票名称,行业,地域,PE等,详细如下 +# code,代码 +# name,名称 +# industry,所属行业 +# area,地区 +# pe,市盈率 +# outstanding,流通股本 +# totals,总股本(万) +# totalAssets,总资产(万) +# liquidAssets,流动资产 +# fixedAssets,固定资产 +# reserved,公积金 +# reservedPerShare,每股公积金 +# eps,每股收益 +# bvps,每股净资 +# pb,市净率 +# timeToMarket,上市日期 +# 返回值类型:Series +def get_stock_info(code): + try: + #DB_WAY == 'mysql': + sql = "select * from %s where %s='%s'" % (INDEX_STOCK_BASIC,KEY_CODE, code) + df = pd.read_sql_query(sql, engine) + se = df.ix[0] + + except Exception as e: + print str(e) + se = pd.Series() + return se + +# 获取终止上市股票列表 +def get_stock_terminated(): + return ts.get_terminated() + +if __name__ == "__main__": + print get_stock_k_line('000001') #get_stock_info('000001') \ No newline at end of file diff --git a/data_process/data_get.pyc b/data_process/data_get.pyc new file mode 100644 index 0000000..c38557d Binary files /dev/null and b/data_process/data_get.pyc differ diff --git a/data_process/download_stock.py b/data_process/download_stock.py index 5107ff4..12a26c7 100644 --- a/data_process/download_stock.py +++ b/data_process/download_stock.py @@ -1,203 +1,204 @@ -#!/usr/local/bin/python -#coding=utf-8 -import os -import urllib2 -import datetime -from datetime import date -import time -from matplotlib.cbook import iterable -from multiprocessing import Pool -from multiprocessing.dummy import Pool as ThreadPool -import copy_reg -import urllib -import re - -# def queryAllStock(): -# url = 'http://quote.eastmoney.com/stock_list.html' -# u = urllib.urlopen(url) -# htmlstr = u.read() -# group = re.match('(.*)', htmlstr).group() -# print group - -# 下载所有A股数据 -def downloadAllHistoryAShareData(): - # os.path.pardir: 上级目录 - downloadDir = os.path.pardir + '\stockdata' - stockDownload = StockDownload(downloadDir, date(2014,1,1), date.today()) - -# listSS = range(600000, 604000) -# listSZ = range(000000, 004060) -# listAll = listSS + listSZ - listAll = ['000725','000783','002167','002505','002600','300315','600000','600011','600048','601001'] - - - print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) - startTime = time.clock() - stockDownload.download_mutli(listAll, 'yahoo') - - endTime = time.clock() - print '多线程执行时间:', (endTime-startTime) - print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) - -# print '单线程执行开始:' -# startTime = time.clock() -# for i in listAll: -# stockDownload.download(str(i)) -# -# endTime = time.clock() -# print '单线程执行时间:', (endTime-startTime) - - - -# 股票下载类,单只股票 -class StockDownload: - - # 构造 - def __init__(self, downloadDir, startDate=date(2014,1,1), endDate=date.today()): - #self.stockCode = stockCode - self.downloadDir = downloadDir - self.startDate = startDate - self.endDate = endDate - self.ignorelist_file = 'IgnoreListStock.txt' - - #增加忽略列表 - if os.path.exists(self.downloadDir) == False: - os.makedirs(self.downloadDir) - try: - f = open(self.downloadDir + '\\' + self.ignorelist_file) - data = f.read() - self.ignoreList = data.split('\n') - f.close() - except Exception as e: - print str(e) - self.ignoreList = [] - - - - # 多线程下载 - def download_mutli(self, listSockeCode, source='yahoo'): - pool = ThreadPool(processes=5) - if source == 'yahoo': - pool.map(self.downloadFromYahoo, listSockeCode) - elif source == '163': - pool.map(self.downloadFrom163, listSockeCode) - pool.close() - pool.join() - - # 从雅虎API下载 - def downloadFromYahoo(self, stockCode): - stockCode = str(stockCode).zfill(6) #不足6位,前面补零 - -# if stockCode in self.ignoreList: -# print 'ignore:', stockCode -# return; - - if os.path.exists(self.downloadDir) == False: - os.makedirs(self.downloadDir) - stock_file = self.downloadDir + '/' + stockCode + '.csv' - #print stockCode - -# if os.path.exists(stock_file): -# print (">>exist:" + stockCode) -# return - - print (">>download begin:" + stockCode) - - exchange = "SS" if (int(stockCode) // 100000 == 6) else "SZ" - - if iterable(self.endDate): - d1 = (self.startDate[1]-1, self.startDate[2], self.startDate[0]) - else: - d1 = (self.startDate.month-1, self.startDate.day, self.startDate.year) - if iterable(self.endDate): - d2 = (self.endDate[1]-1, self.endDate[2], self.endDate[0]) - else: - d2 = (self.endDate.month-1, self.endDate.day, self.endDate.year) - - g='d' - - ticker = stockCode + '.' + exchange - urlFmt = 'http://ichart.yahoo.com/table.csv?a=%d&b=%d&c=%d&d=%d&e=%d&f=%d&s=%s&y=0&g=%s&ignore=.csv' - - url = urlFmt % (d1[0], d1[1], d1[2], - d2[0], d2[1], d2[2], ticker, g) - - self.down_file(url, stock_file) - - print (">>download finish:" + stockCode) - - # 从网易API下载 - def downloadFrom163(self, stockCode): - stockCode = str(stockCode).zfill(6) #不足6位,前面补零 - - stockCode163 = stockCode - if int(stockCode) // 100000 == 0: - stockCode163 = '1'+stockCode - else: - stockCode163 = '0'+stockCode - -# if stockCode in self.ignoreList: -# print 'ignore:', stockCode -# return; - - if os.path.exists(self.downloadDir) == False: - os.makedirs(self.downloadDir) - stock_file = self.downloadDir + '/' + stockCode + '.csv' - #print stockCode - -# if os.path.exists(stock_file): -# print (">>exist:" + stockCode) -# return - - print (">>download begin:" + stockCode) - - strDateStart = self.startDate.strftime('%Y%m%d') - strDateEnd = self.endDate.strftime('%Y%m%d') - - urlFmt = 'http://quotes.money.163.com/service/chddata.html?code=%s&start=%s&end=%s' - - url = urlFmt % (stockCode163,strDateStart, strDateEnd) - - self.down_file(url, stock_file) - - print (">>download finish:" + stockCode) - - # url:下载路径 - # file_name:保存到本地的文件名 - # 找不到股票代码则放入忽略列表 - def down_file(self,url, file_name): - - try: - u = urllib2.urlopen(url) - f = open(file_name, 'wb') - - file_size_dl = 0 - block_sz = 8192 - while True: - buffer = u.read(block_sz) - if not buffer: - break - - file_size_dl += len(buffer) - f.write(buffer) - f.close() - except Exception as e: - print str(e) - - basename = os.path.basename(os.path.splitext(file_name)[0]) #股票代码 - - f = open(self.downloadDir + '/' + self.ignorelist_file, 'a') # a,文件尾部插入,不覆盖原数据 - f.write('\n' + basename) - f.close() - finally: - None - -# def deleteFile(self,fileName): -# try: -# os.remove(self.stockCode + ".csv") -# except Exception as e: -# pass - - -if __name__ == "__main__": - downloadAllHistoryAShareData() \ No newline at end of file +#!/usr/local/bin/python +#coding=utf-8 +#下载股票历史数据 +import os +import urllib2 +import datetime +from datetime import date +import time +from matplotlib.cbook import iterable +from multiprocessing import Pool +from multiprocessing.dummy import Pool as ThreadPool +import copy_reg +import urllib +import re + +# def queryAllStock(): +# url = 'http://quote.eastmoney.com/stock_list.html' +# u = urllib.urlopen(url) +# htmlstr = u.read() +# group = re.match('(.*)', htmlstr).group() +# print group + +# 下载所有A股数据 +# listAll :股票代码 +def downloadAllHistoryAShareData(listAll): + # os.path.pardir: 上级目录 + downloadDir = os.path.pardir + '\stockdata' + stockDownload = StockDownload(downloadDir, date(2017,1,1), date.today()) + +# listSS = range(600000, 604000) +# listSZ = range(000000, 004060) +# listAll = listSS + listSZ +# listAll = ['000725','000783','002167','002505','002600','300315','600000','600011','600048','601001'] + + print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) + startTime = time.clock() + stockDownload.download_mutli(listAll, 'yahoo') + + endTime = time.clock() + print '多线程执行时间:', (endTime-startTime) + print time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())) + +# print '单线程执行开始:' +# startTime = time.clock() +# for i in listAll: +# stockDownload.download(str(i)) +# +# endTime = time.clock() +# print '单线程执行时间:', (endTime-startTime) + + + +# 股票下载类,单只股票 +class StockDownload: + + # 构造 + def __init__(self, downloadDir, startDate=date(2016,1,1), endDate=date.today()): + #self.stockCode = stockCode + self.downloadDir = downloadDir + self.startDate = startDate + self.endDate = endDate + self.ignorelist_file = 'IgnoreListStock.txt' + + #增加忽略列表 + if os.path.exists(self.downloadDir) == False: + os.makedirs(self.downloadDir) + try: + f = open(self.downloadDir + '\\' + self.ignorelist_file) + data = f.read() + self.ignoreList = data.split('\n') + f.close() + except Exception as e: + print str(e) + self.ignoreList = [] + + # 多线程下载 + def download_mutli(self, listSockeCode, source='yahoo'): + pool = ThreadPool(processes=5) + if source == 'yahoo': + pool.map(self.downloadFromYahoo, listSockeCode) + + elif source == '163': + pool.map(self.downloadFrom163, listSockeCode) + pool.close() + pool.join() + + # 从雅虎API下载 + def downloadFromYahoo(self, stockCode): + stockCode = str(stockCode).zfill(6) #不足6位,前面补零 + +# if stockCode in self.ignoreList: +# print 'ignore:', stockCode +# return; + + if os.path.exists(self.downloadDir) == False: + os.makedirs(self.downloadDir) + stock_file = self.downloadDir + '/' + stockCode + '.csv' + #print stockCode + +# if os.path.exists(stock_file): +# print (">>exist:" + stockCode) +# return + + print (">>download begin:" + stockCode) + + exchange = "SS" if (int(stockCode) // 100000 == 6) else "SZ" + + if iterable(self.endDate): + d1 = (self.startDate[1]-1, self.startDate[2], self.startDate[0]) + else: + d1 = (self.startDate.month-1, self.startDate.day, self.startDate.year) + if iterable(self.endDate): + d2 = (self.endDate[1]-1, self.endDate[2], self.endDate[0]) + else: + d2 = (self.endDate.month-1, self.endDate.day, self.endDate.year) + + g='d' + + ticker = stockCode + '.' + exchange + urlFmt = 'http://ichart.yahoo.com/table.csv?a=%d&b=%d&c=%d&d=%d&e=%d&f=%d&s=%s&y=0&g=%s&ignore=.csv' + + url = urlFmt % (d1[0], d1[1], d1[2], + d2[0], d2[1], d2[2], ticker, g) + + if(not self.down_file(url, stock_file)): + self.downloadFrom163(stockCode) + print (">>download finish:" + stockCode) + + # 从网易API下载 + def downloadFrom163(self, stockCode): + stockCode = str(stockCode).zfill(6) #不足6位,前面补零 + + stockCode163 = stockCode + if int(stockCode) // 100000 == 0: + stockCode163 = '1'+stockCode + else: + stockCode163 = '0'+stockCode + +# if stockCode in self.ignoreList: +# print 'ignore:', stockCode +# return; + + if os.path.exists(self.downloadDir) == False: + os.makedirs(self.downloadDir) + stock_file = self.downloadDir + '/' + stockCode + '.csv' + #print stockCode + +# if os.path.exists(stock_file): +# print (">>exist:" + stockCode) +# return + + print (">>download begin:" + stockCode) + + strDateStart = self.startDate.strftime('%Y%m%d') + strDateEnd = self.endDate.strftime('%Y%m%d') + + urlFmt = 'http://quotes.money.163.com/service/chddata.html?code=%s&start=%s&end=%s' + + url = urlFmt % (stockCode163,strDateStart, strDateEnd) + + self.down_file(url, stock_file) + + print (">>download finish:" + stockCode) + + # url:下载路径 + # file_name:保存到本地的文件名 + # 找不到股票代码则放入忽略列表 + def down_file(self,url, file_name): + + try: + u = urllib2.urlopen(url) + f = open(file_name, 'wb') + + file_size_dl = 0 + block_sz = 8192 + while True: + buffer = u.read(block_sz) + if not buffer: + break + + file_size_dl += len(buffer) + f.write(buffer) + f.close() + except Exception as e: + print str(e) + + # basename = os.path.basename(os.path.splitext(file_name)[0]) #股票代码 + # + # f = open(self.downloadDir + '/' + self.ignorelist_file, 'a') # a,文件尾部插入,不覆盖原数据 + # f.write('\n' + basename) + # f.close() + finally: + None + +# def deleteFile(self,fileName): +# try: +# os.remove(self.stockCode + ".csv") +# except Exception as e: +# pass + + +if __name__ == "__main__": + listAll = ['000725', '000783', '002167', '002505', '002600', '300315', '600000', '600011', '600048', '601001'] + downloadAllHistoryAShareData(listAll) \ No newline at end of file diff --git a/data_process/download_stock.pyc b/data_process/download_stock.pyc new file mode 100644 index 0000000..e2bf55a Binary files /dev/null and b/data_process/download_stock.pyc differ diff --git a/data_process/get_all_china_stock_code.py b/data_process/get_all_china_stock_code.py index 44a032e..4ae41aa 100644 --- a/data_process/get_all_china_stock_code.py +++ b/data_process/get_all_china_stock_code.py @@ -1,198 +1,198 @@ -#!/usr/local/bin/python -#coding=utf-8 - -import urllib2 -import BeautifulSoup -import re -import sys -import chardet - -import logging -import scrapy -from scrapy.spiders import Spider -from scrapy.selector import Selector -#from scrapy import log - -from scrapy.downloadermiddlewares.useragent import UserAgentMiddleware -import random as rd -import codecs -import json - -# http://app.finance.ifeng.com/list/stock.php?t=ha&f=symbol&o=asc&p=1 - -#url = 'http://quote.eastmoney.com/stock_list.html' -# url = 'http://app.finance.ifeng.com/list/stock.php?t=ha&f=symbol&o=asc&p=1' -# -# #设置头文件,模拟浏览器访问,防止封IP -# req_header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11', -# 'Accept':'text/html;q=0.9,*/*;q=0.8', -# 'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3', -# 'Accept-Encoding':'gb2312', -# 'Connection':'close', -# 'Referer':None #注意如果依然不能抓取的话,这里可以设置抓取网站的host -# } -# -# #建立连接请求,这时返回页面信息给con这个变量,con是一个对象 -# req = urllib2.Request(url, headers=req_header) -# con = urllib2.urlopen(req) -# -# #对con对象调用read()方法,返回的就是html页面,也就是有html标签的纯文本 -# doc = con.read() -# typeEncode = sys.getfilesystemencoding()##系统默认编码 -# infoencode = chardet.detect(doc).get('encoding','utf-8') #通过第3方模块来自动提取网页的编码 -# html = doc.decode(infoencode, 'ignore').encode(typeEncode)##先转换成unicode编码,然后转换系统编码输出 ---------->方式一 -# #html = doc.decode('gb2312')#.encode('utf-8') #先转成gb2312编码,然后转换unicode编码输出 ---------->方式二 -# #html = unicode(doc,'GBK').encode('UTF-8') ----------->方式三 -# print html -# -# # 生成一个soup对象 -# # soup = BeautifulSoup.BeautifulSoup(html) -# # for link in soup.findAll('a'): -# # if link.get('target') == "_blank": -# # print (link.get('href')) -# -# # paper_desc = soup.html.body.find('div', {'class' : 'quotebody'}).text -# # #stock_list = re.findall(r'\.html\"\>.*\<\/a\>\<\/li\>', html) -# # stock_list = re.findall(r'\>.*\(\d{6}\)\<\/a\>', html) -# # print paper_desc -# -# #关闭连接 -# con.close() - -# Define here the models for your scraped items -# -# See documentation in: -# http://doc.scrapy.org/en/latest/topics/items.html - -class TTjjItem(scrapy.Item): - stockCode = scrapy.Field() - stockName = scrapy.Field() - -class TTJJi(Spider): - - name = "TTJJ" - allowed_domains=['eastmoney.com'] - start_urls = ["http://quote.eastmoney.com/stocklist.html#sh"] - - def parse(self, response): - - sel = Selector(response) - cont=sel.xpath('//div[@class="qox"]/div[@class="quotebody"]/div/ul')[0].extract() - item = TTjjItem() - - for ii in re.findall(r'
  • .*?(.*?)',cont): - item["stockName"]=ii.split("(")[0].encode('utf-8') - item["stockCode"]=("sh"+ii.split("(")[1][:-1]).encode('utf-8') - #log.msg(ii.encode('utf-8'),level="INFO") - yield item - - #item["stockCode"]="+------------------------------------------------------------------+" - #yield item - cont1=sel.xpath('//div[@class="qox"]/div[@class="quotebody"]/div/ul')[1].extract() - - for iii in re.findall(r'
  • .*?(.*?)',cont1): - item["stockName"]=iii.split("(")[0].encode('utf-8') - item["stockCode"]=("sz"+iii.split("(")[1][:-1]).encode('utf-8') - #log.msg(iii.encode('utf-8'),level="INFO") - yield item - -class UserAgentMiddle(UserAgentMiddleware): - - def __init__(self, user_agent=''): - self.user_agent = user_agent - - def process_request(self, request, spider): - ua = rd.choice(self.user_agent_list) - if ua: - #显示当前使用的useragent - print "********Current UserAgent:%s************" %ua - - #记录 - #log.msg('Current UserAgent: '+ua, level='INFO') - request.headers.setdefault('User-Agent', ua) - - #the default user_agent_list composes chrome,I E,firefox,Mozilla,opera,netscape - #for more user agent strings,you can find it in http://www.useragentstring.com/pages/useragentstring.php - user_agent_list = [\ - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 " - "(KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1", - "Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 " - "(KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11", - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.6 " - "(KHTML, like Gecko) Chrome/20.0.1092.0 Safari/536.6", - "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 " - "(KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6", - "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.1 " - "(KHTML, like Gecko) Chrome/19.77.34.5 Safari/537.1", - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.5 " - "(KHTML, like Gecko) Chrome/19.0.1084.9 Safari/536.5", - "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 " - "(KHTML, like Gecko) Chrome/19.0.1084.36 Safari/536.5", - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", - "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", - "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_0) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", - "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " - "(KHTML, like Gecko) Chrome/19.0.1061.0 Safari/536.3", - "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.24 " - "(KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24", - "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/535.24 " - "(KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24" - ] - - -# Define your item pipelines here -# -# Don't forget to add your pipeline to the ITEM_PIPELINES setting -# See: http://doc.scrapy.org/en/latest/topics/item-pipeline.html - -class TtjjPipeline(object): - - def __init__(self): - - self.file=codecs.open("TTJJ.json",mode="wb",encoding='utf-8') - self.file.write('{"hah"'+':[') - - - def process_item(self, item, spider): - line = json.dumps(dict(item))+"," - self.file.write(line.decode("unicode_escape")) - - return item - - - -# Scrapy settings for TTJJ project -# -# For simplicity, this file contains only the most important settings by -# default. All the other settings are documented here: -# -# http://doc.scrapy.org/en/latest/topics/settings.html -# - -BOT_NAME = 'TTJJ' - -SPIDER_MODULES = ['TTJJ.spiders'] -NEWSPIDER_MODULE = 'TTJJ.spiders' -download_delay=1 -ITEM_PIPELINES={'TTJJ.pipelines.TtjjPipeline':300} -COOKIES_ENABLED=False -# Crawl responsibly by identifying yourself (and your website) on the user-agent -#USER_AGENT = 'TTJJ (+http://www.yourdomain.com)' -#取消默认的useragent,使用新的useragent -DOWNLOADER_MIDDLEWARES = { - 'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware' : None, - 'TTJJ.spiders.UserAgentMiddle.UserAgentMiddle':400 +#!/usr/local/bin/python +#coding=utf-8 + +import urllib2 +import BeautifulSoup +import re +import sys +import chardet + +import logging +import scrapy +from scrapy.spiders import Spider +from scrapy.selector import Selector +#from scrapy import log + +from scrapy.downloadermiddlewares.useragent import UserAgentMiddleware +import random as rd +import codecs +import json + +# http://app.finance.ifeng.com/list/stock.php?t=ha&f=symbol&o=asc&p=1 + +#url = 'http://quote.eastmoney.com/stock_list.html' +# url = 'http://app.finance.ifeng.com/list/stock.php?t=ha&f=symbol&o=asc&p=1' +# +# #设置头文件,模拟浏览器访问,防止封IP +# req_header = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11', +# 'Accept':'text/html;q=0.9,*/*;q=0.8', +# 'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3', +# 'Accept-Encoding':'gb2312', +# 'Connection':'close', +# 'Referer':None #注意如果依然不能抓取的话,这里可以设置抓取网站的host +# } +# +# #建立连接请求,这时返回页面信息给con这个变量,con是一个对象 +# req = urllib2.Request(url, headers=req_header) +# con = urllib2.urlopen(req) +# +# #对con对象调用read()方法,返回的就是html页面,也就是有html标签的纯文本 +# doc = con.read() +# typeEncode = sys.getfilesystemencoding()##系统默认编码 +# infoencode = chardet.detect(doc).get('encoding','utf-8') #通过第3方模块来自动提取网页的编码 +# html = doc.decode(infoencode, 'ignore').encode(typeEncode)##先转换成unicode编码,然后转换系统编码输出 ---------->方式一 +# #html = doc.decode('gb2312')#.encode('utf-8') #先转成gb2312编码,然后转换unicode编码输出 ---------->方式二 +# #html = unicode(doc,'GBK').encode('UTF-8') ----------->方式三 +# print html +# +# # 生成一个soup对象 +# # soup = BeautifulSoup.BeautifulSoup(html) +# # for link in soup.findAll('a'): +# # if link.get('target') == "_blank": +# # print (link.get('href')) +# +# # paper_desc = soup.html.body.find('div', {'class' : 'quotebody'}).text +# # #stock_list = re.findall(r'\.html\"\>.*\<\/a\>\<\/li\>', html) +# # stock_list = re.findall(r'\>.*\(\d{6}\)\<\/a\>', html) +# # print paper_desc +# +# #关闭连接 +# con.close() + +# Define here the models for your scraped items +# +# See documentation in: +# http://doc.scrapy.org/en/latest/topics/items.html + +class TTjjItem(scrapy.Item): + stockCode = scrapy.Field() + stockName = scrapy.Field() + +class TTJJi(Spider): + + name = "TTJJ" + allowed_domains=['eastmoney.com'] + start_urls = ["http://quote.eastmoney.com/stocklist.html#sh"] + + def parse(self, response): + + sel = Selector(response) + cont=sel.xpath('//div[@class="qox"]/div[@class="quotebody"]/div/ul')[0].extract() + item = TTjjItem() + + for ii in re.findall(r'
  • .*?(.*?)',cont): + item["stockName"]=ii.split("(")[0].encode('utf-8') + item["stockCode"]=("sh"+ii.split("(")[1][:-1]).encode('utf-8') + #log.msg(ii.encode('utf-8'),level="INFO") + yield item + + #item["stockCode"]="+------------------------------------------------------------------+" + #yield item + cont1=sel.xpath('//div[@class="qox"]/div[@class="quotebody"]/div/ul')[1].extract() + + for iii in re.findall(r'
  • .*?(.*?)',cont1): + item["stockName"]=iii.split("(")[0].encode('utf-8') + item["stockCode"]=("sz"+iii.split("(")[1][:-1]).encode('utf-8') + #log.msg(iii.encode('utf-8'),level="INFO") + yield item + +class UserAgentMiddle(UserAgentMiddleware): + + def __init__(self, user_agent=''): + self.user_agent = user_agent + + def process_request(self, request, spider): + ua = rd.choice(self.user_agent_list) + if ua: + #显示当前使用的useragent + print "********Current UserAgent:%s************" %ua + + #记录 + #log.msg('Current UserAgent: '+ua, level='INFO') + request.headers.setdefault('User-Agent', ua) + + #the default user_agent_list composes chrome,I E,firefox,Mozilla,opera,netscape + #for more user agent strings,you can find it in http://www.useragentstring.com/pages/useragentstring.php + user_agent_list = [\ + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 " + "(KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1", + "Mozilla/5.0 (X11; CrOS i686 2268.111.0) AppleWebKit/536.11 " + "(KHTML, like Gecko) Chrome/20.0.1132.57 Safari/536.11", + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.6 " + "(KHTML, like Gecko) Chrome/20.0.1092.0 Safari/536.6", + "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.6 " + "(KHTML, like Gecko) Chrome/20.0.1090.0 Safari/536.6", + "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/537.1 " + "(KHTML, like Gecko) Chrome/19.77.34.5 Safari/537.1", + "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/536.5 " + "(KHTML, like Gecko) Chrome/19.0.1084.9 Safari/536.5", + "Mozilla/5.0 (Windows NT 6.0) AppleWebKit/536.5 " + "(KHTML, like Gecko) Chrome/19.0.1084.36 Safari/536.5", + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", + "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", + "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_0) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1063.0 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1062.0 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1061.1 Safari/536.3", + "Mozilla/5.0 (Windows NT 6.2) AppleWebKit/536.3 " + "(KHTML, like Gecko) Chrome/19.0.1061.0 Safari/536.3", + "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.24 " + "(KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24", + "Mozilla/5.0 (Windows NT 6.2; WOW64) AppleWebKit/535.24 " + "(KHTML, like Gecko) Chrome/19.0.1055.1 Safari/535.24" + ] + + +# Define your item pipelines here +# +# Don't forget to add your pipeline to the ITEM_PIPELINES setting +# See: http://doc.scrapy.org/en/latest/topics/item-pipeline.html + +class TtjjPipeline(object): + + def __init__(self): + + self.file=codecs.open("TTJJ.json",mode="wb",encoding='utf-8') + self.file.write('{"hah"'+':[') + + + def process_item(self, item, spider): + line = json.dumps(dict(item))+"," + self.file.write(line.decode("unicode_escape")) + + return item + + + +# Scrapy settings for TTJJ project +# +# For simplicity, this file contains only the most important settings by +# default. All the other settings are documented here: +# +# http://doc.scrapy.org/en/latest/topics/settings.html +# + +BOT_NAME = 'TTJJ' + +SPIDER_MODULES = ['TTJJ.spiders'] +NEWSPIDER_MODULE = 'TTJJ.spiders' +download_delay=1 +ITEM_PIPELINES={'TTJJ.pipelines.TtjjPipeline':300} +COOKIES_ENABLED=False +# Crawl responsibly by identifying yourself (and your website) on the user-agent +#USER_AGENT = 'TTJJ (+http://www.yourdomain.com)' +#取消默认的useragent,使用新的useragent +DOWNLOADER_MIDDLEWARES = { + 'scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware' : None, + 'TTJJ.spiders.UserAgentMiddle.UserAgentMiddle':400 } \ No newline at end of file diff --git a/data_process/native_data.py b/data_process/native_data.py index 899d6f1..c2dad1a 100644 --- a/data_process/native_data.py +++ b/data_process/native_data.py @@ -1,34 +1,34 @@ -#!/usr/local/bin/python -#coding=utf-8 -import os -#import matplotlib.mlab as mlab -import sys -#import chardet - -# 获取csv文件序列 -def getCsvDataBySplitPath(stock_code, dataPath): - fh = open(dataPath + '\\' + stock_code +".csv", 'r') - r = mlab.csv2rec(fh); - fh.close() - r.sort() #按时间由远及近排序 - - #比如读取收盘价 prices = r.adj_price - return r - -# 获取csv文件序列 -def getCsvDataByFullPath(csvName): - fh = open(csvName, 'r') - -# typeEncode = sys.getfilesystemencoding()##系统默认编码 -# infoencode = chardet.detect(fh).get('encoding','utf-8') #通过第3方模块来自动提取网页的编码 -# fh = fh.decode(infoencode, 'ignore').encode(typeEncode)##先转换成unicode编码,然后转换系统编码输出 ---------->方式一 - - r = mlab.csv2rec(fh); - fh.close() - r.sort() #按时间由远及近排序 - - #比如读取收盘价 prices = r.adj_price - return r - -if __name__ == "__main__": +#!/usr/local/bin/python +#coding=utf-8 +import os +#import matplotlib.mlab as mlab +import sys +#import chardet + +# 获取csv文件序列 +def getCsvDataBySplitPath(stock_code, dataPath): + fh = open(dataPath + '\\' + stock_code +".csv", 'r') + r = mlab.csv2rec(fh); + fh.close() + r.sort() #按时间由远及近排序 + + #比如读取收盘价 prices = r.adj_price + return r + +# 获取csv文件序列 +def getCsvDataByFullPath(csvName): + fh = open(csvName, 'r') + +# typeEncode = sys.getfilesystemencoding()##系统默认编码 +# infoencode = chardet.detect(fh).get('encoding','utf-8') #通过第3方模块来自动提取网页的编码 +# fh = fh.decode(infoencode, 'ignore').encode(typeEncode)##先转换成unicode编码,然后转换系统编码输出 ---------->方式一 + + r = mlab.csv2rec(fh); + fh.close() + r.sort() #按时间由远及近排序 + + #比如读取收盘价 prices = r.adj_price + return r + +if __name__ == "__main__": print 'data center' \ No newline at end of file diff --git a/data_process/native_data.pyc b/data_process/native_data.pyc new file mode 100644 index 0000000..7e1acec Binary files /dev/null and b/data_process/native_data.pyc differ diff --git a/data_process/online_data.py b/data_process/online_data.py index fe9c198..f89d906 100644 --- a/data_process/online_data.py +++ b/data_process/online_data.py @@ -1,152 +1,147 @@ -#!/usr/local/bin/python -#coding=utf-8 - -import urllib2 -import re -import Stock as st -import tushare as ts -import pandas as pd -import time -import wrapcache -from retrying import retry - -from util.stockutil import fn_timer as fn_timer_ -import util.commons as cm -import util.stockutil as util - -#获取实时股价(同时获取多只股票) -def getLiveMutliChinaStockPrice(stockCodeList): - - - - try: - - stockCodeListEx = [] - for stockCode in stockCodeList: - if len(str(stockCode)) == 6: - exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" - stockCode = exchange + str(stockCode) - stockCodeListEx.append(stockCode) - strStockCode = ','.join(stockCodeListEx) - dataUrl = "http://hq.sinajs.cn/list=%s" % (strStockCode) - stdout = urllib2.urlopen(dataUrl) - stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') - stdoutInfoList = stdoutInfo.splitlines() - - stockClassList = [] - - index = 0 - for eachLine in stdoutInfoList: - - # 正则表达式说明 - # 搜索 “ ”双引号内的字符串,包含换行符,将匹配的字符串分为三组:用()表示 - # group(2):取第二组数据 - tempData = re.search('''(")(.+)(")''', eachLine).group(2) - stockInfo = tempData.split(",") - stock = st.Stock(stockInfo) - stock.code = stockCodeList[index] - index += 1 - if stock.current > 0.0: - stockClassList.append(stock) - else: - print stock.code , 'stop' - return stockClassList - except Exception as e: - #print str(e) - return [] - -#获取实时股价 -def getLiveChinaStockPrice(stockCode): - - try: - exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" - dataUrl = "http://hq.sinajs.cn/list=" + exchange + stockCode - stdout = urllib2.urlopen(dataUrl) - stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') - - # 正则表达式说明 - # 搜索 “ ”双引号内的字符串,包含换行符,将匹配的字符串分为三组:用()表示 - # group(2):取第二组数据 - tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) - stockInfo = tempData.split(",") - - #bb[0]:股票名 bb[1]:今日开盘价 bb[2]:昨日收盘价 bb[3]:当前价格 bb[4]:今日最高价 bb[5]:今日最低价 - #bb[6]:买一报价 bb[7]:卖一报价 bb[8]:成交股票数/100 bb[9]:成交金额/w bb[10]:买一申请股数 bb[11]:买一报价 - #bb[12]:买二股数 bb[13]:买二报价 bb[14]:买三股数 bb[15]:买三报价 bb[16]:买四申请股数 bb[17]:买四报价 - #bb[18]:买五股数 bb[19]:买五报价 bb[20]:卖一股数 bb[21]:卖一报价 bb[22]:卖二申请股数 bb[23]:卖二报价 - #bb[24]:卖三股数 bb[25]:卖三报价 bb[26]:卖四股数 bb[27]:卖四报价 bb[28]:卖五股数 bb[29]:卖五报价 - #bb[30]:日期 bb[31]:时间 bb[8]:不知道 - - return st.Stock(stockInfo) - - except Exception as e: - print(">>>>>> Exception: " + str(e)) - finally: - None - -# 获取A股所有股票的实时股价 -# 通过 ts.get_today_all 获取 -@wrapcache.wrapcache(timeout=5*60) -@retry(stop_max_attempt_number=10) -def get_real_price_dataframe(): - df = ts.get_today_all() - return df - -@fn_timer_ -def getAllChinaStock(): - - stockList = [] - try: - df = get_real_price_dataframe() - for se in df.get_values(): - stock = st.Stock('') - stock.code = se[0] - stock.name = se[1] - stock.current = se[3] - stock.open = se[4] - stock.high = se[5] - stock.low = se[6] - stock.close = se[7] - stock.dealAmount = se[8]/100 - stock.time = time.localtime(time.time()) #时间 - #print stock - - stockList.append(stock) - except: - print 'get real price timeout' - - return stockList - -# 获取A股所有股票的实时股价 -# 通过get_realtime_quotes接口获取 -def getAllChinaStock2(): - df_list = pd.read_csv(cm.DownloadDir + cm.TABLE_STOCKS_BASIC + '.csv') - stockList = df_list['code'].values; - stockList_group = util.group_list(stockList, 20) - print len(stockList_group) - print stockList_group[1] - stockList = [] - for group in stockList_group: - df = ts.get_realtime_quotes(group) - - for se in df.get_values(): - stock = st.Stock('') - stock.code = se[0] - stock.name = se[1] - stock.current = se[3] - stock.open = se[4] - stock.high = se[5] - stock.low = se[6] - stock.close = se[7] - stock.dealAmount = se[8]/100 - stock.time = time.localtime(time.time()) #时间 - #print stock - stockList.append(stock) - return stockList - -if __name__ == "__main__": - getAllChinaStock() - - -#df = ts.get_realtime_quotes('002600') +#!/usr/local/bin/python +#coding=utf-8 + +import urllib2 +import re +import Stock as st +import tushare as ts +import pandas as pd +import time +import wrapcache +from retrying import retry + +from util.stockutil import fn_timer as fn_timer_ +import util.commons as cm +import util.stockutil as util + +#获取实时股价(同时获取多只股票) +def getLiveMutliChinaStockPrice(stockCodeList): + try: + stockCodeListEx = [] + for stockCode in stockCodeList: + if len(str(stockCode)) == 6: + exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" + stockCode = exchange + str(stockCode) + stockCodeListEx.append(stockCode) + strStockCode = ','.join(stockCodeListEx) + dataUrl = "http://hq.sinajs.cn/list=%s" % (strStockCode) + stdout = urllib2.urlopen(dataUrl) + stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') + stdoutInfoList = stdoutInfo.splitlines() + + stockClassList = [] + + index = 0 + for eachLine in stdoutInfoList: + + # 正则表达式说明 + # 搜索 “ ”双引号内的字符串,包含换行符,将匹配的字符串分为三组:用()表示 + # group(2):取第二组数据 + tempData = re.search('''(")(.+)(")''', eachLine).group(2) + stockInfo = tempData.split(",") + stock = st.Stock(stockInfo) + stock.code = stockCodeList[index] + index += 1 + if stock.current > 0.0: + stockClassList.append(stock) + else: + print stock.code , 'stop' + return stockClassList + except Exception as e: + #print str(e) + return [] + +#获取实时股价 +def getLiveChinaStockPrice(stockCode): + try: + exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" + dataUrl = "http://hq.sinajs.cn/list=" + exchange + stockCode + stdout = urllib2.urlopen(dataUrl) + stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') + + # 正则表达式说明 + # 搜索 “ ”双引号内的字符串,包含换行符,将匹配的字符串分为三组:用()表示 + # group(2):取第二组数据 + tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) + stockInfo = tempData.split(",") + + #bb[0]:股票名 bb[1]:今日开盘价 bb[2]:昨日收盘价 bb[3]:当前价格 bb[4]:今日最高价 bb[5]:今日最低价 + #bb[6]:买一报价 bb[7]:卖一报价 bb[8]:成交股票数/100 bb[9]:成交金额/w bb[10]:买一申请股数 bb[11]:买一报价 + #bb[12]:买二股数 bb[13]:买二报价 bb[14]:买三股数 bb[15]:买三报价 bb[16]:买四申请股数 bb[17]:买四报价 + #bb[18]:买五股数 bb[19]:买五报价 bb[20]:卖一股数 bb[21]:卖一报价 bb[22]:卖二申请股数 bb[23]:卖二报价 + #bb[24]:卖三股数 bb[25]:卖三报价 bb[26]:卖四股数 bb[27]:卖四报价 bb[28]:卖五股数 bb[29]:卖五报价 + #bb[30]:日期 bb[31]:时间 bb[8]:不知道 + + return st.Stock(stockInfo) + + except Exception as e: + print(">>>>>> Exception: " + str(e)) + finally: + None + +# 获取A股所有股票的实时股价 +# 通过 ts.get_today_all 获取 +@wrapcache.wrapcache(timeout=5*60) +@retry(stop_max_attempt_number=10) +def get_real_price_dataframe(): + df = ts.get_today_all() + return df + +@fn_timer_ +def getAllChinaStock(): + + stockList = [] + try: + df = get_real_price_dataframe() + for se in df.get_values(): + stock = st.Stock('') + stock.code = se[0] + stock.name = se[1] + stock.current = se[3] + stock.open = se[4] + stock.high = se[5] + stock.low = se[6] + stock.close = se[7] + stock.dealAmount = se[8]/100 + stock.time = time.localtime(time.time()) #时间 + #print stock + + stockList.append(stock) + except: + print 'get real price timeout' + + return stockList + +# 获取A股所有股票的实时股价 +# 通过get_realtime_quotes接口获取 +def getAllChinaStock2(): + df_list = pd.read_csv(cm.DownloadDir + cm.TABLE_STOCKS_BASIC + '.csv') + stockList = df_list['code'].values; + stockList_group = util.group_list(stockList, 20) + print len(stockList_group) + print stockList_group[1] + stockList = [] + for group in stockList_group: + df = ts.get_realtime_quotes(group) + + for se in df.get_values(): + stock = st.Stock('') + stock.code = se[0] + stock.name = se[1] + stock.current = se[3] + stock.open = se[4] + stock.high = se[5] + stock.low = se[6] + stock.close = se[7] + stock.dealAmount = se[8]/100 + stock.time = time.localtime(time.time()) #时间 + #print stock + stockList.append(stock) + return stockList + +if __name__ == "__main__": + getAllChinaStock() + + +#df = ts.get_realtime_quotes('002600') #print df[['code', 'name', 'price', 'bid', 'ask', 'volume', 'amount', 'time']] \ No newline at end of file diff --git a/data_process/online_data.pyc b/data_process/online_data.pyc new file mode 100644 index 0000000..fa060ae Binary files /dev/null and b/data_process/online_data.pyc differ diff --git a/init.py b/init.py index 8d916a9..58d8f4e 100644 --- a/init.py +++ b/init.py @@ -1,47 +1,114 @@ -#coding:utf-8 -__author__ = 'cbb' - -import platform, os -from sqlalchemy import create_engine -from util.MyLogger import Logger - -#DB_WAY:数据存储方式 'csv' # or 'mysql' or 'redis' or 'sqlite' -DB_WAY = 'mysql' -DB_USER = 'root' -DB_PWD = 'root' # or '123456' in win7 -DB_NAME = 'stock' -DownloadDir = os.path.pardir + '/stockdata/' # os.path.pardir: 上级目录 - -# mysql Host -# if platform.system() == 'Windows': -# host_mysql = 'localhost' -# else: -# host_mysql = '101.200.183.216' -host_mysql = '127.0.0.1' -user_mysql = 'admin' -pwd_mysql = '1234' -db_name_mysql = 'wealth_db' - -engine = create_engine('mysql+mysqldb://%s:%s@%s/%s' % (user_mysql, pwd_mysql, host_mysql, db_name_mysql), connect_args={'charset':'utf8'}) - - -# 短均线, 长均线 -AVR_SHORT = 12 -AVR_LONG = 40 - -#买卖标记 -SIGNAL_BUY = 1 #买 -SIGNAL_SALE = -1 #卖 -SIGNAL_DEFAULT = 0 - -#阈值 -Threshold_Buy_Count = 3 -Threshold_Sale_Count = 2 - -#日志设置 -from util.MyLogger import Logger -#infoLogger = Logger(logname='../Log/info.log', logger='I') -#errorLogger = Logger(logname='../Log/error.log', logger='E') - -#配置文件 位置 -config_file_path = '../config.ini' \ No newline at end of file +#coding:utf-8 +__author__ = 'cbb' + +import platform, os +from sqlalchemy import create_engine +from util.MyLogger import Logger +import pymysql +import datetime +import sys +reload(sys) +sys.setdefaultencoding("utf-8") + +#DB_WAY:数据存储方式 'csv' # or 'mysql' or 'redis' or 'sqlite' +DB_WAY = 'mysql' +DB_USER = 'root' +DB_PWD = 'root' # or '123456' in win7 +DB_NAME = 'stock' +DownloadDir = os.path.pardir + '/stockdata/' # os.path.pardir: 上级目录 + +# mysql Host +# if platform.system() == 'Windows': +# host_mysql = 'localhost' +# else: +# host_mysql = '101.200.183.216' +host_mysql = 'localhost' +user_mysql = 'root' +pwd_mysql = '133499' +db_name_mysql = 'wealth_db' + +#engine = create_engine('mysql+mysqldb://%s:%s@%s/%s' % (user_mysql, pwd_mysql, host_mysql, db_name_mysql), connect_args={'charset':'utf8'}) +class get_mysql(object): + '''链接数据库,并根据提供的数据库名称和关键词信息创建一个表格,表格存在就不创建''' + def __init__(self,dbname,key,citys): + self.T = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d%H%M") + self.dbname = dbname + self.key = key + if len(citys) == 1: + self.city = citys[0] + elif len(citys) > 1: + self.city = "&".join(citys) + else: + self.city = "" + self.table_name = "{}_{}_{}".format(self.T,self.key,self.city) + self.conn = pymysql.Connect( + host="localhost", + port=3306, + user='root', + password='133499', + db=self.dbname, + charset='utf8' + ) + self.cursor = self.conn.cursor() + # 直接创建一个表格 + self.create_table() + + # 创建表格的函数,表格名称按照时间和关键词命名 + def create_table(self): + sql = '''CREATE TABLE `{tbname}`( + {job_name} varchar(100) not null, + {gs_name} varchar(100), + {salary} char(20), + {job_site} char(20), + {create_date} char(20), + {job_link} varchar(100), + {gs_link} varchar(100) + )''' + try: + self.cursor.execute(sql.format(tbname=self.table_name,job_name="职位名称",gs_name="公司名称",salary="薪资", + job_site="工作地点",create_date="发布时间",job_link="招聘链接",gs_link="公司链接")) + except Exception as e: + print("创建表格失败,表格可能已经存在!",e) + else: + self.conn.commit() + print("成功创建一个表格,名称是{}".format(self.table_name)) + + # 插入信息函数,每次插入一条信息,插入信息失败会回滚 + def insert_data(self,data): + '''插入数据,不成功就回滚操作''' + sql = '''INSERT INTO `{}` VALUES('{}','{}','{}','{}','{}','{}','{}')''' + try: + self.cursor.execute(sql.format(self.table_name,data["job_name"],data["gs_name"],data["salary"],data["job_site"], + data["create_date"],data["job_link"],data["gs_link"])) + except Exception as e: + self.conn.rollback() + print("插入信息失败,原因:",e) + else: + self.conn.commit() + print("成功插入一条信息") + + def close_mytable(self): + '''关闭游标和断开链接,数据全部插入后必须执行这个操作''' + self.cursor.close() + self.conn.close() + +# 短均线, 长均线 +AVR_SHORT = 12 +AVR_LONG = 40 + +#买卖标记 +SIGNAL_BUY = 1 #买 +SIGNAL_SALE = -1 #卖 +SIGNAL_DEFAULT = 0 + +#阈值 +Threshold_Buy_Count = 3 +Threshold_Sale_Count = 2 + +#日志设置 +from util.MyLogger import Logger +infoLogger = Logger(logname='../Log/info.log', logger='I') +errorLogger = Logger(logname='../Log/error.log', logger='E') + +#配置文件 位置 +config_file_path = '../config.ini' diff --git a/init.pyc b/init.pyc new file mode 100644 index 0000000..5a1f056 Binary files /dev/null and b/init.pyc differ diff --git a/k-line.py b/k-line.py index 2439b1b..875012d 100644 --- a/k-line.py +++ b/k-line.py @@ -1,37 +1,37 @@ -#!/usr/bin/env python -#coding=utf-8 -import matplotlib.pyplot as plt -from matplotlib.dates import DateFormatter, WeekdayLocator,\ - DayLocator, MONDAY -from matplotlib.finance import quotes_historical_yahoo_ohlc, candlestick_ohlc - - -# (Year, month, day) tuples suffice as args for quotes_historical_yahoo -date1 = (2015, 2, 1) -date2 = (2015, 5, 22) - - -mondays = WeekdayLocator(MONDAY) # major ticks on the mondays -alldays = DayLocator() # minor ticks on the days -weekFormatter = DateFormatter('%b %d') # e.g., Jan 12 -dayFormatter = DateFormatter('%d') # e.g., 12 - -quotes = quotes_historical_yahoo_ohlc('600000.SS', date1, date2) -if len(quotes) == 0: - raise SystemExit - -fig, ax = plt.subplots() -fig.subplots_adjust(bottom=0.2) -ax.xaxis.set_major_locator(mondays) -ax.xaxis.set_minor_locator(alldays) -ax.xaxis.set_major_formatter(weekFormatter) -#ax.xaxis.set_minor_formatter(dayFormatter) - -#plot_day_summary(ax, quotes, ticksize=3) -candlestick_ohlc(ax, quotes, width=0.6) - -ax.xaxis_date() -ax.autoscale_view() -plt.setp(plt.gca().get_xticklabels(), rotation=45, horizontalalignment='right') - +#!/usr/bin/env python +#coding=utf-8 +import matplotlib.pyplot as plt +from matplotlib.dates import DateFormatter, WeekdayLocator,\ + DayLocator, MONDAY +from matplotlib.finance import quotes_historical_yahoo_ohlc, candlestick_ohlc + + +# (Year, month, day) tuples suffice as args for quotes_historical_yahoo +date1 = (2015, 2, 1) +date2 = (2015, 5, 22) + + +mondays = WeekdayLocator(MONDAY) # major ticks on the mondays +alldays = DayLocator() # minor ticks on the days +weekFormatter = DateFormatter('%b %d') # e.g., Jan 12 +dayFormatter = DateFormatter('%d') # e.g., 12 + +quotes = quotes_historical_yahoo_ohlc('600000.SS', date1, date2) +if len(quotes) == 0: + raise SystemExit + +fig, ax = plt.subplots() +fig.subplots_adjust(bottom=0.2) +ax.xaxis.set_major_locator(mondays) +ax.xaxis.set_minor_locator(alldays) +ax.xaxis.set_major_formatter(weekFormatter) +#ax.xaxis.set_minor_formatter(dayFormatter) + +#plot_day_summary(ax, quotes, ticksize=3) +candlestick_ohlc(ax, quotes, width=0.6) + +ax.xaxis_date() +ax.autoscale_view() +plt.setp(plt.gca().get_xticklabels(), rotation=45, horizontalalignment='right') + plt.show() \ No newline at end of file diff --git a/livedata.py b/livedata.py index b1e8b77..b766202 100644 --- a/livedata.py +++ b/livedata.py @@ -1,208 +1,208 @@ -#coding=utf-8 -import datetime -import numpy as np -import matplotlib.colors as colors -import matplotlib.finance as finance -import matplotlib.dates as mdates -import matplotlib.ticker as mticker -import matplotlib.mlab as mlab -import matplotlib.pyplot as plt -import matplotlib.font_manager as font_manager - - -startdate = datetime.date(2014,1,1) -today = enddate = datetime.date.today() -ticker = '000048.SZ' - - -fh = finance.fetch_historical_yahoo(ticker, startdate, enddate) -# a numpy record array with fields: date, open, high, low, close, volume, adj_close) - -r = mlab.csv2rec(fh); fh.close() -r.sort() - - -def moving_average(x, n, type='simple'): - """ - compute an n period moving average. - - type is 'simple' | 'exponential' - - """ - x = np.asarray(x) - if type=='simple': - weights = np.ones(n) - else: - weights = np.exp(np.linspace(-1., 0., n)) - - weights /= weights.sum() - - - a = np.convolve(x, weights, mode='full')[:len(x)] - a[:n] = a[n] - return a - -def relative_strength(prices, n=14): - """ - compute the n period relative strength indicator - http://stockcharts.com/school/doku.php?id=chart_school:glossary_r#relativestrengthindex - http://www.investopedia.com/terms/r/rsi.asp - """ - - deltas = np.diff(prices) - seed = deltas[:n+1] - up = seed[seed>=0].sum()/n - down = -seed[seed<0].sum()/n - rs = up/down - rsi = np.zeros_like(prices) - rsi[:n] = 100. - 100./(1.+rs) - - for i in range(n, len(prices)): - delta = deltas[i-1] # cause the diff is 1 shorter - - if delta>0: - upval = delta - downval = 0. - else: - upval = 0. - downval = -delta - - up = (up*(n-1) + upval)/n - down = (down*(n-1) + downval)/n - - rs = up/down - rsi[i] = 100. - 100./(1.+rs) - - return rsi - -def moving_average_convergence(x, nslow=26, nfast=12): - """ - compute the MACD (Moving Average Convergence/Divergence) using a fast and slow exponential moving avg' - return value is emaslow, emafast, macd which are len(x) arrays - """ - emaslow = moving_average(x, nslow, type='exponential') - emafast = moving_average(x, nfast, type='exponential') - return emaslow, emafast, emafast - emaslow - - -plt.rc('axes', grid=True) -plt.rc('grid', color='0.75', linestyle='-', linewidth=0.5) - -textsize = 9 -left, width = 0.1, 0.8 -rect1 = [left, 0.7, width, 0.2] -rect2 = [left, 0.3, width, 0.4] -rect3 = [left, 0.1, width, 0.2] - - -fig = plt.figure(facecolor='white') -axescolor = '#f6f6f6' # the axes background color - -ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height -ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) -ax2t = ax2.twinx() -ax3 = fig.add_axes(rect3, axisbg=axescolor, sharex=ax1) - - - -### plot the relative strength indicator -prices = r.adj_close -rsi = relative_strength(prices) -fillcolor = 'darkgoldenrod' - -ax1.plot(r.date, rsi, color=fillcolor) -ax1.axhline(70, color=fillcolor) -ax1.axhline(30, color=fillcolor) -ax1.fill_between(r.date, rsi, 70, where=(rsi>=70), facecolor=fillcolor, edgecolor=fillcolor) -ax1.fill_between(r.date, rsi, 30, where=(rsi<=30), facecolor=fillcolor, edgecolor=fillcolor) -ax1.text(0.6, 0.9, '>70 = overbought', va='top', transform=ax1.transAxes, fontsize=textsize) -ax1.text(0.6, 0.1, '<30 = oversold', transform=ax1.transAxes, fontsize=textsize) -ax1.set_ylim(0, 100) -ax1.set_yticks([30,70]) -ax1.text(0.025, 0.95, 'RSI (14)', va='top', transform=ax1.transAxes, fontsize=textsize) -ax1.set_title('%s daily'%ticker) - -### plot the price and volume data -dx = r.adj_close - r.close -low = r.low + dx -high = r.high + dx - -deltas = np.zeros_like(prices) -deltas[1:] = np.diff(prices) -up = deltas>0 -ax2.vlines(r.date[up], low[up], high[up], color='black', label='_nolegend_') -ax2.vlines(r.date[~up], low[~up], high[~up], color='black', label='_nolegend_') -ma20 = moving_average(prices, 20, type='simple') -ma200 = moving_average(prices, 200, type='simple') - -linema20, = ax2.plot(r.date, ma20, color='blue', lw=2, label='MA (20)') -linema200, = ax2.plot(r.date, ma200, color='red', lw=2, label='MA (200)') - - -last = r[-1] -s = '%s O:%1.2f H:%1.2f L:%1.2f C:%1.2f, V:%1.1fM Chg:%+1.2f' % ( - today.strftime('%d-%b-%Y'), - last.open, last.high, - last.low, last.close, - last.volume*1e-6, - last.close-last.open ) -t4 = ax2.text(0.3, 0.9, s, transform=ax2.transAxes, fontsize=textsize) - -props = font_manager.FontProperties(size=10) -leg = ax2.legend(loc='center left', shadow=True, fancybox=True, prop=props) -leg.get_frame().set_alpha(0.5) - - -volume = (r.close*r.volume)/1e6 # dollar volume in millions -vmax = volume.max() -poly = ax2t.fill_between(r.date, volume, 0, label='Volume', facecolor=fillcolor, edgecolor=fillcolor) -ax2t.set_ylim(0, 5*vmax) -ax2t.set_yticks([]) - - -### compute the MACD indicator -fillcolor = 'darkslategrey' -nslow = 26 -nfast = 12 -nema = 9 -emaslow, emafast, macd = moving_average_convergence(prices, nslow=nslow, nfast=nfast) -ema9 = moving_average(macd, nema, type='exponential') -ax3.plot(r.date, macd, color='black', lw=2) -ax3.plot(r.date, ema9, color='blue', lw=1) -ax3.fill_between(r.date, macd-ema9, 0, alpha=0.5, facecolor=fillcolor, edgecolor=fillcolor) - - -ax3.text(0.025, 0.95, 'MACD (%d, %d, %d)'%(nfast, nslow, nema), va='top', - transform=ax3.transAxes, fontsize=textsize) - -#ax3.set_yticks([]) -# turn off upper axis tick labels, rotate the lower ones, etc -for ax in ax1, ax2, ax2t, ax3: - if ax!=ax3: - for label in ax.get_xticklabels(): - label.set_visible(False) - else: - for label in ax.get_xticklabels(): - label.set_rotation(30) - label.set_horizontalalignment('right') - - ax.fmt_xdata = mdates.DateFormatter('%Y-%m-%d') - - - -class MyLocator(mticker.MaxNLocator): - def __init__(self, *args, **kwargs): - mticker.MaxNLocator.__init__(self, *args, **kwargs) - - def __call__(self, *args, **kwargs): - return mticker.MaxNLocator.__call__(self, *args, **kwargs) - -# at most 5 ticks, pruning the upper and lower so they don't overlap -# with other ticks -#ax2.yaxis.set_major_locator(mticker.MaxNLocator(5, prune='both')) -#ax3.yaxis.set_major_locator(mticker.MaxNLocator(5, prune='both')) - -ax2.yaxis.set_major_locator(MyLocator(5, prune='both')) -ax3.yaxis.set_major_locator(MyLocator(5, prune='both')) - +#coding=utf-8 +import datetime +import numpy as np +import matplotlib.colors as colors +import matplotlib.finance as finance +import matplotlib.dates as mdates +import matplotlib.ticker as mticker +import matplotlib.mlab as mlab +import matplotlib.pyplot as plt +import matplotlib.font_manager as font_manager + + +startdate = datetime.date(2014,1,1) +today = enddate = datetime.date.today() +ticker = '000048.SZ' + + +fh = finance.fetch_historical_yahoo(ticker, startdate, enddate) +# a numpy record array with fields: date, open, high, low, close, volume, adj_close) + +r = mlab.csv2rec(fh); fh.close() +r.sort() + + +def moving_average(x, n, type='simple'): + """ + compute an n period moving average. + + type is 'simple' | 'exponential' + + """ + x = np.asarray(x) + if type=='simple': + weights = np.ones(n) + else: + weights = np.exp(np.linspace(-1., 0., n)) + + weights /= weights.sum() + + + a = np.convolve(x, weights, mode='full')[:len(x)] + a[:n] = a[n] + return a + +def relative_strength(prices, n=14): + """ + compute the n period relative strength indicator + http://stockcharts.com/school/doku.php?id=chart_school:glossary_r#relativestrengthindex + http://www.investopedia.com/terms/r/rsi.asp + """ + + deltas = np.diff(prices) + seed = deltas[:n+1] + up = seed[seed>=0].sum()/n + down = -seed[seed<0].sum()/n + rs = up/down + rsi = np.zeros_like(prices) + rsi[:n] = 100. - 100./(1.+rs) + + for i in range(n, len(prices)): + delta = deltas[i-1] # cause the diff is 1 shorter + + if delta>0: + upval = delta + downval = 0. + else: + upval = 0. + downval = -delta + + up = (up*(n-1) + upval)/n + down = (down*(n-1) + downval)/n + + rs = up/down + rsi[i] = 100. - 100./(1.+rs) + + return rsi + +def moving_average_convergence(x, nslow=26, nfast=12): + """ + compute the MACD (Moving Average Convergence/Divergence) using a fast and slow exponential moving avg' + return value is emaslow, emafast, macd which are len(x) arrays + """ + emaslow = moving_average(x, nslow, type='exponential') + emafast = moving_average(x, nfast, type='exponential') + return emaslow, emafast, emafast - emaslow + + +plt.rc('axes', grid=True) +plt.rc('grid', color='0.75', linestyle='-', linewidth=0.5) + +textsize = 9 +left, width = 0.1, 0.8 +rect1 = [left, 0.7, width, 0.2] +rect2 = [left, 0.3, width, 0.4] +rect3 = [left, 0.1, width, 0.2] + + +fig = plt.figure(facecolor='white') +axescolor = '#f6f6f6' # the axes background color + +ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height +ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) +ax2t = ax2.twinx() +ax3 = fig.add_axes(rect3, axisbg=axescolor, sharex=ax1) + + + +### plot the relative strength indicator +prices = r.adj_close +rsi = relative_strength(prices) +fillcolor = 'darkgoldenrod' + +ax1.plot(r.date, rsi, color=fillcolor) +ax1.axhline(70, color=fillcolor) +ax1.axhline(30, color=fillcolor) +ax1.fill_between(r.date, rsi, 70, where=(rsi>=70), facecolor=fillcolor, edgecolor=fillcolor) +ax1.fill_between(r.date, rsi, 30, where=(rsi<=30), facecolor=fillcolor, edgecolor=fillcolor) +ax1.text(0.6, 0.9, '>70 = overbought', va='top', transform=ax1.transAxes, fontsize=textsize) +ax1.text(0.6, 0.1, '<30 = oversold', transform=ax1.transAxes, fontsize=textsize) +ax1.set_ylim(0, 100) +ax1.set_yticks([30,70]) +ax1.text(0.025, 0.95, 'RSI (14)', va='top', transform=ax1.transAxes, fontsize=textsize) +ax1.set_title('%s daily'%ticker) + +### plot the price and volume data +dx = r.adj_close - r.close +low = r.low + dx +high = r.high + dx + +deltas = np.zeros_like(prices) +deltas[1:] = np.diff(prices) +up = deltas>0 +ax2.vlines(r.date[up], low[up], high[up], color='black', label='_nolegend_') +ax2.vlines(r.date[~up], low[~up], high[~up], color='black', label='_nolegend_') +ma20 = moving_average(prices, 20, type='simple') +ma200 = moving_average(prices, 200, type='simple') + +linema20, = ax2.plot(r.date, ma20, color='blue', lw=2, label='MA (20)') +linema200, = ax2.plot(r.date, ma200, color='red', lw=2, label='MA (200)') + + +last = r[-1] +s = '%s O:%1.2f H:%1.2f L:%1.2f C:%1.2f, V:%1.1fM Chg:%+1.2f' % ( + today.strftime('%d-%b-%Y'), + last.open, last.high, + last.low, last.close, + last.volume*1e-6, + last.close-last.open ) +t4 = ax2.text(0.3, 0.9, s, transform=ax2.transAxes, fontsize=textsize) + +props = font_manager.FontProperties(size=10) +leg = ax2.legend(loc='center left', shadow=True, fancybox=True, prop=props) +leg.get_frame().set_alpha(0.5) + + +volume = (r.close*r.volume)/1e6 # dollar volume in millions +vmax = volume.max() +poly = ax2t.fill_between(r.date, volume, 0, label='Volume', facecolor=fillcolor, edgecolor=fillcolor) +ax2t.set_ylim(0, 5*vmax) +ax2t.set_yticks([]) + + +### compute the MACD indicator +fillcolor = 'darkslategrey' +nslow = 26 +nfast = 12 +nema = 9 +emaslow, emafast, macd = moving_average_convergence(prices, nslow=nslow, nfast=nfast) +ema9 = moving_average(macd, nema, type='exponential') +ax3.plot(r.date, macd, color='black', lw=2) +ax3.plot(r.date, ema9, color='blue', lw=1) +ax3.fill_between(r.date, macd-ema9, 0, alpha=0.5, facecolor=fillcolor, edgecolor=fillcolor) + + +ax3.text(0.025, 0.95, 'MACD (%d, %d, %d)'%(nfast, nslow, nema), va='top', + transform=ax3.transAxes, fontsize=textsize) + +#ax3.set_yticks([]) +# turn off upper axis tick labels, rotate the lower ones, etc +for ax in ax1, ax2, ax2t, ax3: + if ax!=ax3: + for label in ax.get_xticklabels(): + label.set_visible(False) + else: + for label in ax.get_xticklabels(): + label.set_rotation(30) + label.set_horizontalalignment('right') + + ax.fmt_xdata = mdates.DateFormatter('%Y-%m-%d') + + + +class MyLocator(mticker.MaxNLocator): + def __init__(self, *args, **kwargs): + mticker.MaxNLocator.__init__(self, *args, **kwargs) + + def __call__(self, *args, **kwargs): + return mticker.MaxNLocator.__call__(self, *args, **kwargs) + +# at most 5 ticks, pruning the upper and lower so they don't overlap +# with other ticks +#ax2.yaxis.set_major_locator(mticker.MaxNLocator(5, prune='both')) +#ax3.yaxis.set_major_locator(mticker.MaxNLocator(5, prune='both')) + +ax2.yaxis.set_major_locator(MyLocator(5, prune='both')) +ax3.yaxis.set_major_locator(MyLocator(5, prune='both')) + plt.show() \ No newline at end of file diff --git a/new_trade/main.py b/new_trade/main.py index 216bb14..df74b82 100644 --- a/new_trade/main.py +++ b/new_trade/main.py @@ -1,52 +1,52 @@ -#coding: utf-8 - -import tushare as ts -import pandas as pd - -from util.codeConvert import GetNowDate - -def diagnosis_one_stock(code): - """ - 个股诊断 - :return: - """ - - # 获取股价 - df = get_stock_price(code, True) - - # 均线指标 - - - # K线提示 - -def get_stock_price(code, include_realtime_price): - """ - 获取个股股价 - :param code: 股票代码 - :param include_realtime_price: 是否含实时股价 - :return: - """ - - # 获取历史股价 - df = ts.get_hist_data(code) - df = df[['close']] - df['date'] = df.index - - if include_realtime_price: - df_today = ts.get_today_all() - df_code = df_today[df_today['code']==code] - df_code = df_code[['trade']] - df_code['date'] = GetNowDate() - df_code.rename(columns={'trade': 'close'}, inplace=True) - df = pd.concat([df, df_code], ignore_index=True) - - df.sort(columns='date', inplace=True) - df = df.drop_duplicates(['date']) - df.index = range(len(df)) - print '\n' - # print df.head() - print df.tail() - return df - -if __name__ == "__main__": - get_stock_price('600000', True) +#coding: utf-8 + +import tushare as ts +import pandas as pd + +from util.codeConvert import GetNowDate + +def diagnosis_one_stock(code): + """ + 个股诊断 + :return: + """ + + # 获取股价 + df = get_stock_price(code, True) + + # 均线指标 + + + # K线提示 + +def get_stock_price(code, include_realtime_price): + """ + 获取个股股价 + :param code: 股票代码 + :param include_realtime_price: 是否含实时股价 + :return: + """ + + # 获取历史股价 + df = ts.get_hist_data(code) + df = df[['close']] + df['date'] = df.index + + if include_realtime_price: + df_today = ts.get_today_all() + df_code = df_today[df_today['code']==code] + df_code = df_code[['trade']] + df_code['date'] = GetNowDate() + df_code.rename(columns={'trade': 'close'}, inplace=True) + df = pd.concat([df, df_code], ignore_index=True) + + # df.sort(columns='date', inplace=True) + df = df.drop_duplicates(['date']) + df.index = range(len(df)) + print '\n' + # print df.head() + print df.tail() + return df + +if __name__ == "__main__": + get_stock_price('600000', True) diff --git a/new_trade/strategy_ma.py b/new_trade/strategy_ma.py index 4697b78..2886bb9 100644 --- a/new_trade/strategy_ma.py +++ b/new_trade/strategy_ma.py @@ -1,37 +1,36 @@ -#coding: utf-8 - -""" -均线策略 -""" - -import pandas as pd - -# MA指标择时 -def select_time_ma(df_closeprice, ma_short=12, ma_long=40): - """ - MA指标择时(简单均线SMA) - :param df_closeprice: DataFrame, 收盘价 - :param ma_short: - :param ma_long: - :return: - """ - - #SMA - df_closeprice['ma_close_short'] = pd.rolling_mean(df_closeprice['close_price'], ma_short) - df_closeprice['ma_close_long'] = pd.rolling_mean(df_closeprice['close_price'], ma_long) - - - df_closeprice['signal'] = 0 - - for ix, row in df_closeprice.iterrows(): - pass - - - # if ema_close_short[-1] > ema_close_short[-2] and ema_close_short[-1] > ema_close_long[-1] \ - # and ema_close_short[-2] < ema_close_long[-2]: - # signal = SIGNAL_BUY - # elif ema_close_long[-1] < ema_close_long[-2] and ema_close_short[-1] < ema_close_long[-1] \ - # and ema_close_short[-2] > ema_close_long[-2]: - # signal = SIGNAL_SALE - +#coding: utf-8 + +""" +均线策略 +""" + +import pandas as pd + +# MA指标择时 +def select_time_ma(df_closeprice, ma_short=12, ma_long=40): + """ + MA指标择时(简单均线SMA) + :param df_closeprice: DataFrame, 收盘价 + :param ma_short: + :param ma_long: + :return: + """ + + #SMA + df_closeprice['ma_close_short'] = pd.rolling_mean(df_closeprice['close_price'], ma_short) + df_closeprice['ma_close_long'] = pd.rolling_mean(df_closeprice['close_price'], ma_long) + + + df_closeprice['signal'] = 0 + + for ix, row in df_closeprice.iterrows(): + pass + + # if ema_close_short[-1] > ema_close_short[-2] and ema_close_short[-1] > ema_close_long[-1] \ + # and ema_close_short[-2] < ema_close_long[-2]: + # signal = SIGNAL_BUY + # elif ema_close_long[-1] < ema_close_long[-2] and ema_close_short[-1] < ema_close_long[-1] \ + # and ema_close_short[-2] > ema_close_long[-2]: + # signal = SIGNAL_SALE + # # return signal \ No newline at end of file diff --git a/plot.py b/plot.py index 8e14f69..e78b8b3 100644 --- a/plot.py +++ b/plot.py @@ -1,207 +1,207 @@ -#!/usr/local/bin/python -#coding=utf-8 -import os -import matplotlib.pyplot as plt -import matplotlib.mlab as mlab -import numpy as np -import math -import csv -import urllib -import urllib2 -import pywt -from numpy import log -import cwavelet -import copy -import cleastsq -import BP - -date_begin = [1, 1, 2014] -date_end = [5, 27, 2015] - - -def plotClosePrice(plt, stock_name, stock_code, dataPath): - fh = open(dataPath + '\\' + stock_code +".csv", 'r') - r = mlab.csv2rec(fh); fh.close() - r.sort() - - prices = r.adj_close - - - plt.plot(r.date, prices) - - - -#收盘价走势及小波处理 -def plotData(stock_code, stock_name): - try: - xValues=[] - yValues=[] - - xLabels=[] - - dataPath = os.getcwd() + '\\stockdata\\'; - - i=-1 - for line in open(dataPath + stock_code +".csv"): - f_date, f_open, f_high, f_low, f_close, f_volume, f_adjclose = line.split(",") - i += 1 - if i == 0 or i > 1000: - continue - xValues.append(i) - yValues.append(float(f_adjclose)) - xLabels.append(f_date) - yValues.reverse() - - - zValues = cwavelet.getWaveletData(yValues, 'db2', 4, 'sqtwolog') - zxValue = np.arange(0,len(zValues),1) - print len(zxValue), len(zValues) - - plt.figure(figsize=(16,8)) - plt.plot(xValues, yValues, label=stock_code, color="b", linewidth=1) - plt.plot(zxValue, zValues, color="r", linewidth=2) - plt.xlabel("Time") - plt.ylabel("Price") - plt.title( stock_name) - #plt.xticks(range(min(xLabels), max(xLabels)+1, 10)) - plt.grid() - #plt.legend() - plt.show() - - except Exception as e: - print ("Exception:>>>" + str(e)) - finally: - None - -def plotRateOfReturn(stock_code): - try: - xValues = [] - yValues = [] - - i=-1 - for line in open(stock_code + ".csv"): - i += 1 - if i == 0 or i > 1000: - continue - f_date, f_open, f_high, f_low, f_close, f_volume, f_adjclose = line.split(",") - yValues.append(float(f_adjclose)) - - #yValues删除最后一个元素,zValues删除第一个元素 - zValues = copy.deepcopy(yValues) #深拷贝 - yValues.reverse() - yValues.pop() - zValues.pop() - zValues.reverse() - if len(yValues) != len(zValues): - return - - rateValues = [] - for i in range(0, len(yValues)): - print float(zValues[i])/yValues[i] - rateValues.append(math.log(float(zValues[i])/yValues[i])) - xValues.append(i) - - rateValues = cwavelet.getWaveletData(yValues, 'db4', 2, 'sqtwolog') - - # BP神经网络 -# patStock = [] -# for i in range(0, len(yValues)): -# each = [[i], [yValues[i]]] -# patStock.append(each) -# patStockPre = copy.deepcopy(patStock) -# for i in range(len(yValues), len(yValues)+10): -# each = [[i], [0]] -# patStockPre.append(each) -# pat = [ -# [[0], [0]], -# [[2], [1]], -# [[3], [1]], -# [[4], [5]] -# ] -# -# # create a network with two input, two hidden, and one output nodes -# n = BP.NN(1, 2, 1) -# # train it with some patterns -# n.train(patStock) -# # test it -# n.test(patStock) - - #最小二乘法 - print "原始长度:", len(rateValues) - catRateValues = rateValues[:-7] - print "原始长度:", len(catRateValues) - leastsqValues = cwavelet.getWavePacketData(catRateValues, 'haar', 4, 3) - #leastsqValues = cleastsq.getFitYValues(range(len(catRateValues)), catRateValues, range(len(catRateValues)+3)) - print "变换后长度:", len(leastsqValues) - newLeastsqValues = np.concatenate((rateValues[:-3], leastsqValues[-3:])) - - newLeastsqValues2 = [] - for data in newLeastsqValues: - data -= 0.2 - newLeastsqValues2.append(data) - newLeastsqValues = newLeastsqValues2 - - print "变换后长度:", len(newLeastsqValues) - plt.figure(figsize=(16,8)) - plt.legend() - plt.plot(range(len(rateValues)), rateValues,'b-', linewidth=1) - plt.plot(range(len(newLeastsqValues)), newLeastsqValues, 'r-', linewidth=1) - plt.xlabel('Time') - plt.ylabel('Price') - plt.title(stock_code) - plt.grid() - - plt.show() - - - except Exception as e: - print ("Exception:>>>"+str(e)) - finally: - None - -def down_file(url, file_name): - - u = urllib2.urlopen(url) - f = open(file_name, 'wb') - - file_size_dl = 0 - block_sz = 8192 - while True: - buffer = u.read(block_sz) - if not buffer: - break - - file_size_dl += len(buffer) - f.write(buffer) - f.close() - -ChinaStockNumIndividualList = [ - {'code':"600011", 'num':1100, 'name':u"华能国际"}, # - {'code':"600000", 'num':1900, 'name':u"浦发银行"}, # - {'code':"002600", 'num':1000, 'name':u"江粉磁材"}, # - {'code':"002505", 'num':1000, 'name':u"大康牧业"}, # - {'code':"000725", 'num':2000, 'name':u"京东方A"}, # - {'code':"000783", 'num':600, 'name':u"长江证券"}, # - {'code':"600048", 'num':2000, 'name':u"保利地产"}, # - {'code':"300315", 'num':200, 'name':u"掌趣科技"}, # - {'code':"002167", 'num':600, 'name':u"东方锆业"}, # - {'code':"601001", 'num':1000, 'name':u"大同煤业"}, # - #{'code':"150172", 'num':5000, 'name':"证券B"}, # -] - -if __name__ == '__main__': - - for stockCodeDict in ChinaStockNumIndividualList: - print stockCodeDict['name'] - #plotRateOfReturn(stockCodeDict['code']) - plotData(stockCodeDict['code'], stockCodeDict['name']) - break - #上证指数 - #downloadData("000001") - #plotRateOfReturn("000001") - - - - - - +#!/usr/local/bin/python +#coding=utf-8 +import os +import matplotlib.pyplot as plt +import matplotlib.mlab as mlab +import numpy as np +import math +import csv +import urllib +import urllib2 +import pywt +from numpy import log +import cwavelet +import copy +import cleastsq +import BP + +date_begin = [1, 1, 2014] +date_end = [5, 27, 2015] + + +def plotClosePrice(plt, stock_name, stock_code, dataPath): + fh = open(dataPath + '\\' + stock_code +".csv", 'r') + r = mlab.csv2rec(fh); fh.close() + r.sort() + + prices = r.adj_close + + + plt.plot(r.date, prices) + + + +#收盘价走势及小波处理 +def plotData(stock_code, stock_name): + try: + xValues=[] + yValues=[] + + xLabels=[] + + dataPath = os.getcwd() + '\\stockdata\\'; + + i=-1 + for line in open(dataPath + stock_code +".csv"): + f_date, f_open, f_high, f_low, f_close, f_volume, f_adjclose = line.split(",") + i += 1 + if i == 0 or i > 1000: + continue + xValues.append(i) + yValues.append(float(f_adjclose)) + xLabels.append(f_date) + yValues.reverse() + + + zValues = cwavelet.getWaveletData(yValues, 'db2', 4, 'sqtwolog') + zxValue = np.arange(0,len(zValues),1) + print len(zxValue), len(zValues) + + plt.figure(figsize=(16,8)) + plt.plot(xValues, yValues, label=stock_code, color="b", linewidth=1) + plt.plot(zxValue, zValues, color="r", linewidth=2) + plt.xlabel("Time") + plt.ylabel("Price") + plt.title( stock_name) + #plt.xticks(range(min(xLabels), max(xLabels)+1, 10)) + plt.grid() + #plt.legend() + plt.show() + + except Exception as e: + print ("Exception:>>>" + str(e)) + finally: + None + +def plotRateOfReturn(stock_code): + try: + xValues = [] + yValues = [] + + i=-1 + for line in open(stock_code + ".csv"): + i += 1 + if i == 0 or i > 1000: + continue + f_date, f_open, f_high, f_low, f_close, f_volume, f_adjclose = line.split(",") + yValues.append(float(f_adjclose)) + + #yValues删除最后一个元素,zValues删除第一个元素 + zValues = copy.deepcopy(yValues) #深拷贝 + yValues.reverse() + yValues.pop() + zValues.pop() + zValues.reverse() + if len(yValues) != len(zValues): + return + + rateValues = [] + for i in range(0, len(yValues)): + print float(zValues[i])/yValues[i] + rateValues.append(math.log(float(zValues[i])/yValues[i])) + xValues.append(i) + + rateValues = cwavelet.getWaveletData(yValues, 'db4', 2, 'sqtwolog') + + # BP神经网络 +# patStock = [] +# for i in range(0, len(yValues)): +# each = [[i], [yValues[i]]] +# patStock.append(each) +# patStockPre = copy.deepcopy(patStock) +# for i in range(len(yValues), len(yValues)+10): +# each = [[i], [0]] +# patStockPre.append(each) +# pat = [ +# [[0], [0]], +# [[2], [1]], +# [[3], [1]], +# [[4], [5]] +# ] +# +# # create a network with two input, two hidden, and one output nodes +# n = BP.NN(1, 2, 1) +# # train it with some patterns +# n.train(patStock) +# # test it +# n.test(patStock) + + #最小二乘法 + print "原始长度:", len(rateValues) + catRateValues = rateValues[:-7] + print "原始长度:", len(catRateValues) + leastsqValues = cwavelet.getWavePacketData(catRateValues, 'haar', 4, 3) + #leastsqValues = cleastsq.getFitYValues(range(len(catRateValues)), catRateValues, range(len(catRateValues)+3)) + print "变换后长度:", len(leastsqValues) + newLeastsqValues = np.concatenate((rateValues[:-3], leastsqValues[-3:])) + + newLeastsqValues2 = [] + for data in newLeastsqValues: + data -= 0.2 + newLeastsqValues2.append(data) + newLeastsqValues = newLeastsqValues2 + + print "变换后长度:", len(newLeastsqValues) + plt.figure(figsize=(16,8)) + plt.legend() + plt.plot(range(len(rateValues)), rateValues,'b-', linewidth=1) + plt.plot(range(len(newLeastsqValues)), newLeastsqValues, 'r-', linewidth=1) + plt.xlabel('Time') + plt.ylabel('Price') + plt.title(stock_code) + plt.grid() + + plt.show() + + + except Exception as e: + print ("Exception:>>>"+str(e)) + finally: + None + +def down_file(url, file_name): + + u = urllib2.urlopen(url) + f = open(file_name, 'wb') + + file_size_dl = 0 + block_sz = 8192 + while True: + buffer = u.read(block_sz) + if not buffer: + break + + file_size_dl += len(buffer) + f.write(buffer) + f.close() + +ChinaStockNumIndividualList = [ + {'code':"600011", 'num':1100, 'name':u"华能国际"}, # + {'code':"600000", 'num':1900, 'name':u"浦发银行"}, # + {'code':"002600", 'num':1000, 'name':u"江粉磁材"}, # + {'code':"002505", 'num':1000, 'name':u"大康牧业"}, # + {'code':"000725", 'num':2000, 'name':u"京东方A"}, # + {'code':"000783", 'num':600, 'name':u"长江证券"}, # + {'code':"600048", 'num':2000, 'name':u"保利地产"}, # + {'code':"300315", 'num':200, 'name':u"掌趣科技"}, # + {'code':"002167", 'num':600, 'name':u"东方锆业"}, # + {'code':"601001", 'num':1000, 'name':u"大同煤业"}, # + #{'code':"150172", 'num':5000, 'name':"证券B"}, # +] + +if __name__ == '__main__': + + for stockCodeDict in ChinaStockNumIndividualList: + print stockCodeDict['name'] + #plotRateOfReturn(stockCodeDict['code']) + plotData(stockCodeDict['code'], stockCodeDict['name']) + break + #上证指数 + #downloadData("000001") + #plotRateOfReturn("000001") + + + + + + diff --git a/plot.pyc b/plot.pyc new file mode 100644 index 0000000..a48fe3e Binary files /dev/null and b/plot.pyc differ diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..d3c468d --- /dev/null +++ b/requirements.txt @@ -0,0 +1,17 @@ +requests==2.14.2 +SQLAlchemy==1.1.11 +pandas==0.19.2 +retrying==1.3.3 +tqdm==4.19.5 +matplotlib==2.1.1 +APScheduler==3.3.1 +tushare==1.0.7 +chardet==3.0.4 +PyMySQL==0.7.11 +PyWavelets==0.5.2 +wrapcache==1.0.8 +numpy==1.13.3 +BeautifulSoup==3.2.1 +beautifulsoup4==4.6.0 +scrapy==1.5.0 +Pyevolve==0.6rc1 diff --git a/shedule/trade_daily.bat b/shedule/trade_daily.bat index 0a29564..5ba2328 100644 --- a/shedule/trade_daily.bat +++ b/shedule/trade_daily.bat @@ -1,2 +1,2 @@ -cd E:\Code\stock\trade_process +cd E:\Code\stock\trade_process python live_trade.py \ No newline at end of file diff --git a/stock.py b/stock.py index d66ac09..2bf81d5 100644 --- a/stock.py +++ b/stock.py @@ -1,237 +1,234 @@ -#!/usr/local/bin/python3 -#coding=utf-8 -#source http://www.cnblogs.com/txw1958/ - -import os, io, sys, re, time, json, base64 -import webbrowser, decimal -import urllib2 -from time import sleep -from plot import plotData - - -period_All_List = [ - "min", #分时线 - "daily", #日K线 - "weekly", #周K线 - "monthly" #月K线 - ] -period_min = period_All_List[0] -period_daily = period_All_List[1] - -ChinaStockIndexList = [ - "000001", # sh000001 上证指数 - "399001", # sz399001 深证成指 -# "000300", # sh000300 沪深300 -# "399005", # sz399005 中小板指 -# "399006", # sz399006 创业板指 -# "000003", # sh000003 B股指数 -] -ChinaStockIndividualList = [ - "600011", # - "600000", # - "002600", # - "002505", # - "000725", # - "000783", # - "600048", # - "300315", # - "002167", # - "601001", # - "150172", # -] - -ChinaStockNumIndividualList = [ - {'code':"600011", 'num':1100}, # 华能国际 - {'code':"600000", 'num':1900}, # 浦发银行 - {'code':"002600", 'num':1000}, # 江粉磁材 - {'code':"002505", 'num':1000}, # 大康牧业 - {'code':"000725", 'num':2000}, # 京东方A - {'code':"000783", 'num':600}, # 长江证券 - {'code':"600048", 'num':2000}, # 保利地产 - {'code':"300315", 'num':200}, # 掌趣科技 - {'code':"002167", 'num':600}, # 东方锆业 - {'code':"601001", 'num':1000}, # 大同煤业 - {'code':"150172", 'num':5000}, # 证券B -] - -WorldStockIndexList = [ - {'code':"000001", 'yahoo':"000001.SS",'name':{'chinese':"中国上证指数", 'english':"CHINA SHANGHAI COMPOSITE INDEX"}}, - {'code':"399001", 'yahoo':"399001.SZ",'name':{'chinese':"中国深证成指", 'english':"SZSE COMPONENT INDEX"}}, - {'code':"DJI", 'yahoo':"^DJI",'name':{'chinese':"美国道琼斯工业平均指数", 'english':"Dow Jones Industrial Average"}}, - {'code':"IXIC", 'yahoo':"^IXIC",'name':{'chinese':"美国纳斯达克综合指数", 'english':"NASDAQ Composite"},}, - {'code':"GSPC", 'yahoo':"^GSPC",'name':{'chinese':"美国标准普尔500指数", 'english':"S&P 500"}}, - {'code':"N225", 'yahoo':"^N225",'name':{'chinese':"日本日经225指数", 'english':"NIKKEI 225"}}, - {'code':"TWII", 'yahoo':"^TWII",'name':{'chinese':"台湾台北加权指数", 'english':"TSEC weighted index"}}, - {'code':"HSI", 'yahoo':"^HSI",'name':{'chinese':"香港恒生指数", 'english':"HANG SENG INDEX"}}, - {'code':"FCHI", 'yahoo':"^FCHI",'name':{'chinese':"法国CAC40指数", 'english':"CAC 40"}}, - {'code':"FTSE", 'yahoo':"^FTSE",'name':{'chinese':"英国富时100指数", 'english':"FTSE 100"}}, - {'code':"GDAXI", 'yahoo':"^GDAXI",'name':{'chinese':"德国法兰克福DAX指数", 'english':"DAX"} - } -] -WorldStockIndexList_SP500 = WorldStockIndexList[7] - -#国内股票数据:指数 -def getChinaStockIndexInfo(stockCode, period): - try: - exchange = "sz" if (int(stockCode) // 100000 == 3) else "sh" - #http://hq.sinajs.cn/list=s_sh000001 - dataUrl = "http://hq.sinajs.cn/list=s_" + exchange + stockCode - stdout = urllib2.urlopen(dataUrl) - stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') - tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) - stockInfo = tempData.split(",") - #stockCode = stockCode, - stockName = stockInfo[0] - stockEnd = stockInfo[1] #当前价,15点后为收盘价 - stockZD = stockInfo[2] #涨跌 - stockLastEnd= str(float(stockEnd) - float(stockZD)) #开盘价 - stockFD = stockInfo[3] #幅度 - stockZS = stockInfo[4] #总手 - stockZS_W = str(int(stockZS) / 100) - stockJE = stockInfo[5] #金额 - stockJE_Y = str(int(stockJE) / 10000) - content = "#" + stockName + "#" + "(" + str(stockCode) + ")" + " 收盘:" \ - + stockEnd + ",涨跌:" + stockZD + ",幅度:" + stockFD + "%" \ - + ",总手:" + stockZS_W + "万" + ",金额:" + stockJE_Y + "亿" + " " - - imgPath = "http://image.sinajs.cn/newchart/" + period + "/n/" + exchange + str(stockCode) + ".gif" - twitter = {'message': content, 'image': ''} - - except Exception as e: - print(">>>>>> Exception: " + str(e)) - else: - return twitter - finally: - None - -#国内股票数据:个股 -def getChinaStockIndividualInfo(stockCode, period): - try: - exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" - dataUrl = "http://hq.sinajs.cn/list=" + exchange + stockCode - stdout = urllib2.urlopen(dataUrl) - stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') - tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) - stockInfo = tempData.split(",") - #stockCode = stockCode, - stockName = stockInfo[0] #名称 - stockStart = stockInfo[1] #开盘 - stockLastEnd= stockInfo[2] #昨收盘 - stockCur = stockInfo[3] #当前 - stockMax = stockInfo[4] #最高 - stockMin = stockInfo[5] #最低 - stockUp = round(float(stockCur) - float(stockLastEnd), 2) - if (float(stockCur) == 0.0): - stockUp = 0 - stockRange = round(float(stockUp) / float(stockLastEnd), 4) * 100 - if (stockRange == 0): - stockRange = 0 - stockVolume = round(float(stockInfo[8]) / (100 * 10000), 2) - stockMoney = round(float(stockInfo[9]) / (100000000), 2) - stockTime = stockInfo[31] - -# content = "#" + stockName + "#(" + stockCode + ")" + " 开盘:" + stockStart \ -# + ",最新:" + stockCur + ",最高:" + stockMax + ",最低:" + stockMin \ -# + ",涨跌:" + str(stockUp) + ",幅度:" + str(stockRange) + "%" \ -# + ",总手:" + str(stockVolume) + "万" + ",金额:" + str(stockMoney) \ -# + "亿" + ",更新时间:" + stockTime + " " - - content = "#" + stockName + "#(" + stockCode + ")" + " 幅度:" + str(stockRange) + "%"\ - + ",最新:" + stockCur + ",最高/最低:" + stockMax + "/" + stockMin \ - + ",总手:" + str(stockVolume) + "万" + ",金额:" + str(stockMoney) \ - + "亿" + ",更新时间:" + stockTime + " " - - #imgUrl = "http://image.sinajs.cn/newchart/" + period + "/n/" + exchange + str(stockCode) + ".gif" - #twitter = {'message': content, 'image': imgUrl} - - twitter = {'message': content, 'image':'', 'stockUp':stockUp} - - except Exception as e: - print(">>>>>> Exception: " + str(e)) - else: - return twitter - finally: - None - -#全球股票指数 -def getWorldStockIndexInfo(stockDict): - try: - #http://download.finance.yahoo.com/d/quotes.csv?s=^IXIC&f=sl1c1p2l - yahooCode = stockDict['yahoo'] - dataUrl = "http://download.finance.yahoo.com/d/quotes.csv?s=" + yahooCode + "&f=sl1c1p2l" - - stdout = urllib2.urlopen(dataUrl) - stdoutInfo = stdout.read().decode('gb2312') - tempData = stdoutInfo.replace('"', '') - stockInfo = tempData.split(",") - stockNameCn = stockDict['name']['chinese'] - stockNameEn = stockDict['name']['english'] - stockCode = stockDict['code'] - stockEnd = stockInfo[1] #当前价,5点后为收盘价 - stockZD = stockInfo[2] #涨跌 - stockLastEnd= str(float(stockEnd) - float(stockZD)) #开盘价 - stockFD = stockInfo[3] #幅度 - percent = float(stockFD.replace("%", "")) - matchResult = re.search("([\w?\s?:]*)(\-)", stockInfo[4]) #日期和最新值 - stockDate = matchResult.group(1) - - content = "#" + stockNameCn + "# " + stockNameEn + "(" + stockCode + ")" \ - + " 当前:" + stockEnd + ", 涨跌:" + stockZD + ", 幅度:" + stockFD \ - + ", 最后交易时间:" + stockDate - - twitter = content - - except Exception as err: - print(">>>>>> Exception: " + yahooCode + " " + str(err)) - else: - return twitter - finally: - None - -def test_china_index_data(): - for stockCode in ChinaStockIndexList: - twitter = getChinaStockIndexInfo(stockCode, period_daily) - #print twitter['message'] + twitter['image'] - -def test_china_individual_data(): - -# for stockCode in ChinaStockIndividualList: -# twitter = getChinaStockIndividualInfo(stockCode, period_min) -# print(twitter['message'] + twitter['image']) - total = 0.0 - for stockCodeNumDict in ChinaStockNumIndividualList: - twitter = getChinaStockIndividualInfo(stockCodeNumDict['code'], period_min) - print twitter - if twitter != None: - total += twitter['stockUp'] * stockCodeNumDict['num'] - print twitter['message'] + twitter['image'] - print '当日盈亏:' + str(total) - - -def test_global_index_data(): - for stockDict in WorldStockIndexList: - print getWorldStockIndexInfo(stockDict) - - -def main(): - "main function" - print base64.b64decode(b'Q29weXJpZ2h0IChjKSAyMDEyIERvdWN1YmUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLg==').decode() - -# dataUrl = "http://ichart.yahoo.com/table.csv?s=600000.SS&a=08&b=25&c=2010&d=09&e=8&f=2010&g=d" -# stdout = urllib.request.urlopen(dataUrl) -# stdoutInfo = stdout.read().decode('utf-8') - - ISOTIMEFORMAT='%Y-%m-%d %X' - while 1: - str = time.strftime(ISOTIMEFORMAT, time.localtime()) - print str - test_china_index_data() - test_china_individual_data() - #test_global_index_data() - print '\n' - sleep(180) #180s - -if __name__ == '__main__': - #plotData() - main() - +#!/usr/local/bin/python3 +#coding=utf-8 +#source http://www.cnblogs.com/txw1958/ + +import os, io, sys, re, time, json, base64 +import webbrowser, decimal +import urllib2 +from time import sleep +from plot import plotData + + +period_All_List = [ + "min", #分时线 + "daily", #日K线 + "weekly", #周K线 + "monthly" #月K线 + ] +period_min = period_All_List[0] +period_daily = period_All_List[1] + +ChinaStockIndexList = [ + "000001", # sh000001 上证指数 + "399001", # sz399001 深证成指 + "000300", # sh000300 沪深300 + "399005", # sz399005 中小板指 + "399006", # sz399006 创业板指 + "000003",# sh000003 B股指数 + "000016",#上证50 + "000012",#国债指数 +] +ChinaStockIndividualList = [ + "600011", # + "600000", # + "002600", # + "002505", # + "000725", # + "000783", # + "600048", # + "300315", # + "002167", # + "601001", # + "150172", # +] + +ChinaStockNumIndividualList = [ + {'code':"600011", 'num':1100}, # 华能国际 + {'code':"600000", 'num':1900}, # 浦发银行 + {'code':"002600", 'num':1000}, # 江粉磁材 + {'code':"002505", 'num':1000}, # 大康牧业 + {'code':"000725", 'num':2000}, # 京东方A + {'code':"000783", 'num':600}, # 长江证券 + {'code':"600048", 'num':2000}, # 保利地产 + {'code':"300315", 'num':200}, # 掌趣科技 + {'code':"002167", 'num':600}, # 东方锆业 + {'code':"601001", 'num':1000}, # 大同煤业 + {'code':"150172", 'num':5000}, # 证券B +] + +WorldStockIndexList = [ + {'code':"000001", 'yahoo':"000001.SS",'name':{'chinese':"中国上证指数", 'english':"CHINA SHANGHAI COMPOSITE INDEX"}}, + {'code':"399001", 'yahoo':"399001.SZ",'name':{'chinese':"中国深证成指", 'english':"SZSE COMPONENT INDEX"}}, + {'code':"DJI", 'yahoo':"^DJI",'name':{'chinese':"美国道琼斯工业平均指数", 'english':"Dow Jones Industrial Average"}}, + {'code':"IXIC", 'yahoo':"^IXIC",'name':{'chinese':"美国纳斯达克综合指数", 'english':"NASDAQ Composite"},}, + {'code':"GSPC", 'yahoo':"^GSPC",'name':{'chinese':"美国标准普尔500指数", 'english':"S&P 500"}}, + {'code':"N225", 'yahoo':"^N225",'name':{'chinese':"日本日经225指数", 'english':"NIKKEI 225"}}, + {'code':"TWII", 'yahoo':"^TWII",'name':{'chinese':"台湾台北加权指数", 'english':"TSEC weighted index"}}, + {'code':"HSI", 'yahoo':"^HSI",'name':{'chinese':"香港恒生指数", 'english':"HANG SENG INDEX"}}, + {'code':"FCHI", 'yahoo':"^FCHI",'name':{'chinese':"法国CAC40指数", 'english':"CAC 40"}}, + {'code':"FTSE", 'yahoo':"^FTSE",'name':{'chinese':"英国富时100指数", 'english':"FTSE 100"}}, + {'code':"GDAXI", 'yahoo':"^GDAXI",'name':{'chinese':"德国法兰克福DAX指数", 'english':"DAX"} + } +] +WorldStockIndexList_SP500 = WorldStockIndexList[7] + +#国内股票数据:指数 +def getChinaStockIndexInfo(stockCode, period): + try: + exchange = "sz" if (int(stockCode) // 100000 == 3) else "sh" + #http://hq.sinajs.cn/list=s_sh000001 + dataUrl = "http://hq.sinajs.cn/list=s_" + exchange + stockCode + stdout = urllib2.urlopen(dataUrl) + stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') + tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) + stockInfo = tempData.split(",") + #stockCode = stockCode, + stockName = stockInfo[0] + stockEnd = stockInfo[1] #当前价,15点后为收盘价 + stockZD = stockInfo[2] #涨跌 + stockLastEnd= str(float(stockEnd) - float(stockZD)) #开盘价 + stockFD = stockInfo[3] #幅度 + stockZS = stockInfo[4] #总手 + stockZS_W = str(int(stockZS) / 100) + stockJE = stockInfo[5] #金额 + stockJE_Y = str(int(stockJE) / 10000) + content = "#" + stockName + "#" + "(" + str(stockCode) + ")" + " 收盘:" \ + + stockEnd + ",涨跌:" + stockZD + ",幅度:" + stockFD + "%" \ + + ",总手:" + stockZS_W + "万" + ",金额:" + stockJE_Y + "亿" + " " + + imgPath = "http://image.sinajs.cn/newchart/" + period + "/n/" + exchange + str(stockCode) + ".gif" + twitter = {'message': content, 'image': ''} + + except Exception as e: + print(">>>>>> Exception: " + str(e)) + else: + return twitter + finally: + None + +#国内股票数据:个股 +def getChinaStockIndividualInfo(stockCode, period): + try: + exchange = "sh" if (int(stockCode) // 100000 == 6) else "sz" + dataUrl = "http://hq.sinajs.cn/list=" + exchange + stockCode + stdout = urllib2.urlopen(dataUrl) + stdoutInfo = stdout.read().decode('gb2312').encode('utf-8') + tempData = re.search('''(")(.+)(")''', stdoutInfo).group(2) + stockInfo = tempData.split(",") + #stockCode = stockCode, + stockName = stockInfo[0] #名称 + stockStart = stockInfo[1] #开盘 + stockLastEnd= stockInfo[2] #昨收盘 + stockCur = stockInfo[3] #当前 + stockMax = stockInfo[4] #最高 + stockMin = stockInfo[5] #最低 + stockUp = round(float(stockCur) - float(stockLastEnd), 2) + if (float(stockCur) == 0.0): + stockUp = 0 + stockRange = round(float(stockUp) / float(stockLastEnd), 4) * 100 + if (stockRange == 0): + stockRange = 0 + stockVolume = round(float(stockInfo[8]) / (100 * 10000), 2) + stockMoney = round(float(stockInfo[9]) / (100000000), 2) + stockTime = stockInfo[31] + +# content = "#" + stockName + "#(" + stockCode + ")" + " 开盘:" + stockStart \ +# + ",最新:" + stockCur + ",最高:" + stockMax + ",最低:" + stockMin \ +# + ",涨跌:" + str(stockUp) + ",幅度:" + str(stockRange) + "%" \ +# + ",总手:" + str(stockVolume) + "万" + ",金额:" + str(stockMoney) \ +# + "亿" + ",更新时间:" + stockTime + " " + + content = "#" + stockName + "#(" + stockCode + ")" + " 幅度:" + str(stockRange) + "%"\ + + ",最新:" + stockCur + ",最高/最低:" + stockMax + "/" + stockMin \ + + ",总手:" + str(stockVolume) + "万" + ",金额:" + str(stockMoney) \ + + "亿" + ",更新时间:" + stockTime + " " + + #imgUrl = "http://image.sinajs.cn/newchart/" + period + "/n/" + exchange + str(stockCode) + ".gif" + #twitter = {'message': content, 'image': imgUrl} + + twitter = {'message': content, 'image':'', 'stockUp':stockUp} + + except Exception as e: + print(">>>>>> Exception: " + str(e)) + else: + return twitter + finally: + None + +#全球股票指数 +def getWorldStockIndexInfo(stockDict): + try: + #http://download.finance.yahoo.com/d/quotes.csv?s=^IXIC&f=sl1c1p2l + yahooCode = stockDict['yahoo'] + dataUrl = "http://download.finance.yahoo.com/d/quotes.csv?s=" + yahooCode + "&f=sl1c1p2l" + + stdout = urllib2.urlopen(dataUrl) + stdoutInfo = stdout.read().decode('gb2312') + tempData = stdoutInfo.replace('"', '') + stockInfo = tempData.split(",") + stockNameCn = stockDict['name']['chinese'] + stockNameEn = stockDict['name']['english'] + stockCode = stockDict['code'] + stockEnd = stockInfo[1] #当前价,5点后为收盘价 + stockZD = stockInfo[2] #涨跌 + stockLastEnd= str(float(stockEnd) - float(stockZD)) #开盘价 + stockFD = stockInfo[3] #幅度 + percent = float(stockFD.replace("%", "")) + matchResult = re.search("([\w?\s?:]*)(\-)", stockInfo[4]) #日期和最新值 + stockDate = matchResult.group(1) + + content = "#" + stockNameCn + "# " + stockNameEn + "(" + stockCode + ")" \ + + " 当前:" + stockEnd + ", 涨跌:" + stockZD + ", 幅度:" + stockFD \ + + ", 最后交易时间:" + stockDate + + twitter = content + + except Exception as err: + print(">>>>>> Exception: " + yahooCode + " " + str(err)) + else: + return twitter + finally: + None + +def test_china_index_data(): + for stockCode in ChinaStockIndexList: + twitter = getChinaStockIndexInfo(stockCode, period_daily) + print twitter['message'] + twitter['image'] + +def test_china_individual_data(): + + # for stockCode in ChinaStockIndividualList: + # twitter = getChinaStockIndividualInfo(stockCode, period_min) + # print(twitter['message'] + twitter['image']) + total = 0.0 + for stockCodeNumDict in ChinaStockNumIndividualList: + twitter = getChinaStockIndividualInfo(stockCodeNumDict['code'], period_min) + print twitter + if twitter != None: + total += twitter['stockUp'] * stockCodeNumDict['num'] + print twitter['message'] + twitter['image'] + print '当日盈亏:' + str(total) + +def test_global_index_data(): + for stockDict in WorldStockIndexList: + print getWorldStockIndexInfo(stockDict) + +def main(): + "main function" + print base64.b64decode(b'Q29weXJpZ2h0IChjKSAyMDEyIERvdWN1YmUgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLg==').decode() + # dataUrl = "http://ichart.yahoo.com/table.csv?s=600000.SS&a=08&b=25&c=2010&d=09&e=8&f=2010&g=d" + # stdout = urllib.request.urlopen(dataUrl) + # stdoutInfo = stdout.read().decode('utf-8') + ISOTIMEFORMAT='%Y-%m-%d %X' + while 1: + str = time.strftime(ISOTIMEFORMAT, time.localtime()) + print str + test_china_index_data() + # test_china_individual_data() + test_global_index_data() + print '\n' + sleep(10) #180s + +if __name__ == '__main__': + #plotData() + main() diff --git a/stock_trader.py b/stock_trader.py new file mode 100644 index 0000000..2d2e00b --- /dev/null +++ b/stock_trader.py @@ -0,0 +1,31 @@ +#coding=utf-8 +from trade_process.strategy.macd_back_test import macdmain +from trade_process.strategy.tread_tracking import stock_trader_main +from trade_process.strategy.macd_live_test import macd_live_main +from trade_process.efund_mail2 import main1 +from trade_process.fund_zf import main_zf +if __name__ == '__main__': + stockList = ['000725', '000783', '002167', '002505', '002600', '300315', '600000', '600011', '600048', '601001'] + ChinaStockIndexList = [ + "000001", # sh000001 上证指数 + "399001", # sz399001 深证成指 + "000300", # sh000300 沪深300 + "399005", # sz399005 中小板指 + "399006", # sz399006 创业板指 + "000003", # sh000003 B股指数 + "000016", # 上证50 + "000012", # 国债指数 + ] + code = []#[ ['160222', '国泰国证食品饮料行业指数分级'],['110022', 'eConsumption '],['110003', 'eSSE50'], ['110020', 'HS300'], ['110028', 'anxinB'], + # ['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], + # ['110031', 'eHSI'], ['161130', 'eNASDAQ100'],['161125', 'SPX500']] + # fundlist=main_zf() + # for i in range(0,1):#len(fundlist) + # code.append(fundlist[i]) + #均线策略 + # macd=macdmain(code) + # print macd + + main1() + # stock_trader_main(code) + # macd_live_main(code) diff --git a/stockdata/GAOpt.txt b/stockdata/GAOpt.txt new file mode 100644 index 0000000..954b011 --- /dev/null +++ b/stockdata/GAOpt.txt @@ -0,0 +1,291 @@ +MACD|110022| eConsumption |5, 10, 37| 69.115635200000014, +MACD|110003| eSSE50|6, 24, 65| 47.789947559999973, +MACD|110020| HS300|19, 34, 69| 23.323488000000015, +MACD|110028| anxinB|17, 32, 89| 12.543257519999996, +MACD|002963| egold|20, 19, 89| 1.5666868000000118, +MACD|003321| eoil|1, 13, 64| 24.28305155, +MACD|004744| eGEI|1, 50, 50| 1.9942221199999899, +MACD|110031| eHSI|17, 39, 96| 15.212850880000008, +MACD|161130| eNASDAQ100|20, 19, 97| 9.8934821999999887, +MACD|161125| SPX500|18, 43, 67| 9.1397807199999992, +MACD|110022| eConsumption |5, 10, 37| 69.115635200000014, +MACD|110003| eSSE50|6, 24, 65| 47.789947559999973, +MACD|160222|̩֤ʳƷҵָּ|3, 7, 97|32.97278 +MA|160222|̩֤ʳƷҵָּ|1, 10, 99|23.73437 +MA|160222|̩֤ʳƷҵָּ|11, 10, 13|27.05073 +MA|110022|eConsumption |20, 8, 90|30.12688 +MA|110003|eSSE50|17, 18, 56|25.34664 +MA|110020|HS300|20, 10, 44|13.54273 +MA|110028|anxinB|8, 8, 32|3.8957 +MA|002963|egold|1, 6, 12|2.401 +MA|003321|eoil|17, 6, 56|24.70722 +MA|004744|eGEI|6, 7, 100|7.05999 +MA|110031|eHSI|8, 6, 34|14.02487 +MA|161130|eNASDAQ100|9, 36, 12|11.02345 +MA|161125|SPX500|2, 39, 17|10.18168 + +DMA|160222|̩֤ʳƷҵָּ|14, 27, 78|10.8117 +MA|160222|̩֤ʳƷҵָּ|1, 10, 89|23.73437 +MACD|160222|̩֤ʳƷҵָּ|4, 9, 78|32.97278 +TRIX|160222|̩֤ʳƷҵָּ|12, 9, 78|7.02884 +DMA|110022|eConsumption |17, 31, 78|25.39119 +MA|110022|eConsumption |19, 7, 78|30.12688 +MACD|110022|eConsumption |10, 21, 78|28.49607 +TRIX|110022|eConsumption |1, 32, 78|29.85222 +DMA|110003|eSSE50|6, 30, 78|9.98048 +MA|110003|eSSE50|6, 6, 16|26.20661 +MACD|110003|eSSE50|19, 21, 72|25.34664 +TRIX|110003|eSSE50|9, 49, 78|9.94463 +DMA|110020|HS300|18, 29, 78|7.24066 +MA|110020|HS300|6, 6, 10|14.02331 +MACD|110020|HS300|6, 55, 78|9.52746 +TRIX|110020|HS300|13, 30, 78|6.44664 +DMA|110028|anxinB|20, 34, 78|3.71367 +MA|110028|anxinB|10, 8, 22|3.8957 +MACD|110028|anxinB|10, 25, 78|3.832 +TRIX|110028|anxinB|11, 20, 78|3.36012 +DMA|002963|egold|5, 16, 78|3.04324 +MA|002963|egold|1, 7, 10|2.401 +MACD|002963|egold|19, 10, 72|0.95787 +TRIX|002963|egold|6, 9, 78|2.71533 +DMA|003321|eoil|14, 45, 78|12.08337 +MA|003321|eoil|18, 6, 72|24.70722 +MACD|003321|eoil|3, 35, 78|17.40164 +TRIX|003321|eoil|6, 9, 78|6.83046 +DMA|004744|eGEI|2, 10, 78|2.72784 +MA|004744|eGEI|6, 7, 95|7.05999 +MACD|004744|eGEI|2, 6, 78|7.57617 +TRIX|004744|eGEI|5, 20, 78|1.82664 +DMA|110031|eHSI|2, 16, 78|11.32942 +MA|110031|eHSI|9, 7, 78|14.02487 +MACD|110031|eHSI|17, 11, 78|11.72215 +TRIX|110031|eHSI|6, 9, 78|11.27058 +DMA|161130|eNASDAQ100|17, 13, 78|4.7883 +MA|161130|eNASDAQ100|12, 34, 14|10.94492 +MACD|161130|eNASDAQ100|1, 17, 82|8.56408 +TRIX|161130|eNASDAQ100|6, 9, 78|2.15505 +DMA|161125|SPX500|2, 10, 78|2.21374 +MA|161125|SPX500|2, 38, 17|10.18168 +MACD|161125|SPX500|20, 15, 72|8.431 +TRIX|161125|SPX500|5, 20, 78|2.19041 +DMA|001865|ǰԴ¼C |11, 32, 80|10.64591 +MA|001865|ǰԴ¼C |20, 19, 77|27.74885 +MACD|001865|ǰԴ¼C |3, 10, 62|26.50087 +TRIX|001865|ǰԴ¼C |14, 7, 38|9.59872 +DMA|165312|50 Ʊָ|12, 55, 57|9.11024 +MA|165312|50 Ʊָ|1, 45, 12|6.2966 +MACD|165312|50 Ʊָ|9, 7, 80|6.80788 +TRIX|165312|50 Ʊָ|7, 59, 70|5.64648 +DMA|001892|ʢ˳ɳ |9, 31, 28|15.51121 +MA|001892|ʢ˳ɳ |6, 41, 46|29.17076 +MACD|001892|ʢ˳ɳ |4, 16, 70|28.4102 +TRIX|001892|ʢ˳ɳ |11, 34, 57|13.8076 +DMA|260110|˳Ǿѡ |19, 29, 46|9.08645 +MA|260110|˳Ǿѡ |5, 15, 94|16.07584 +MACD|260110|˳Ǿѡ |1, 7, 84|9.76416 +TRIX|260110|˳Ǿѡ |5, 44, 70|3.88812 +DMA|260116|˳ǺľA |7, 36, 84|11.57253 +MA|260116|˳ǺľA |6, 6, 12|29.42919 +MACD|260116|˳ǺľA |2, 21, 22|27.23138 +TRIX|260116|˳ǺľA |10, 52, 70|11.58646 +DMA|002085|ʢ+ |9, 34, 84|15.61371 +MA|002085|ʢ+ |12, 31, 16|28.66209 +MACD|002085|ʢ+ |2, 23, 79|27.78855 +TRIX|002085|ʢ+ |11, 34, 57|13.80577 +MA|260108|˳˳ɳ |19, 12, 91|18.66496 +MACD|260108|˳˳ɳ |4, 19, 99|19.27349 +MA|001740|й2025 |8, 6, 17|19.85835 +MACD|001740|й2025 |19, 8, 91|22.19493 +MA|160632|Ʒּ Ʊָ|2, 38, 94|15.60955 +MACD|160632|Ʒּ Ʊָ|3, 7, 84|28.96886 +MA|206007|ѡ |6, 6, 16|30.71428 +MACD|206007|ѡ |8, 20, 46|30.24909 +MA|001542|̩+Ʊ Ʊ|2, 54, 83|13.73456 +MACD|001542|̩+Ʊ Ʊ|7, 8, 62|29.22265 +MA|000854|ϲҵ Ʊ|17, 10, 66|31.1615 +MACD|000854|ϲҵ Ʊ|4, 8, 62|30.35519 +MA|161725|֤׾ָּ Ʊָ|5, 14, 12|15.08644 +MACD|161725|֤׾ָּ Ʊָ|19, 18, 84|18.2056 +MA|550016|ųԶC ּܸ|16, 8, 46|47.78 +MACD|550016|ųԶC ּܸ|9, 19, 91|47.78 +MA|000431|Ʒƴл |20, 10, 70|30.68181 +MACD|000431|Ʒƴл |7, 21, 29|30.15358 +MA|000248|֤ҪETF ӻ|3, 47, 55|17.36217 +MACD|000248|֤ҪETF ӻ|7, 9, 62|39.34048 +MA|519664|A |20, 6, 84|33.84116 +MACD|519664|A |2, 16, 79|34.4181 +MA|020005|̩Ƚ |9, 6, 28|17.63986 +MACD|020005|̩Ƚ |19, 21, 29|16.80808 +MA|000083|ҵ |20, 28, 98|33.64974 +MACD|000083|ҵ |3, 32, 22|32.07629 +MA|481012|֤ ӻ|16, 6, 36|30.93803 +MACD|481012|֤ ӻ|2, 18, 86|29.76042 +MA|519665|C |19, 6, 84|33.88362 +MACD|519665|C |2, 16, 86|33.95783 +MA|180012|ԣ |1, 52, 71|13.84414 +MACD|180012|ԣ |4, 15, 31|25.50005 +MA|070032|ʵŻ |3, 13, 68|17.79934 +MACD|070032|ʵŻ |4, 7, 62|33.33868 +MA|001170|̩˻ |19, 11, 82|28.59445 +MACD|001170|̩˻ |13, 21, 91|26.55327 +MA|040008|ѡ |9, 8, 47|23.24383 +MACD|040008|ѡ |8, 10, 62|22.43298 +MA|004008|˼·A |2, 47, 10|0.7119 +MACD|004008|˼·A |2, 7, 84|0.58005 +MA|004009|˼·C |3, 51, 17|0.31564 +MACD|004009|˼·C |2, 11, 84|0.33037 +MA|519056|ͨȵ |1, 25, 30|15.40842 +MACD|519056|ͨȵ |7, 9, 62|31.0742 +MA|260103|˳Ƕƽ |17, 8, 34|25.13643 +MACD|260103|˳Ƕƽ |7, 8, 84|25.36861 +MA|001287|A |1, 48, 27|25.32231 +MACD|001287|A |7, 8, 62|34.63417 +MA|000619|ҵ |8, 8, 84|29.99624 +MACD|000619|ҵ |8, 9, 27|29.75675 +MA|001387|¾ûA |8, 20, 16|0.85731 +MACD|001387|¾ûA |14, 6, 79|1.63479 +MA|001631|֤ʳƷָA Ʊָ|4, 43, 82|15.36307 +MACD|001631|֤ʳƷָA Ʊָ|2, 9, 62|29.38617 +MA|000742|̩¾û |6, 33, 73|12.26891 +MACD|000742|̩¾û |3, 7, 84|26.21631 +MA|001632|֤ʳƷָC Ʊָ|3, 54, 82|15.32682 +MACD|001632|֤ʳƷָC Ʊָ|2, 9, 62|29.23509 +MA|001606|ũҵ4.0 |1, 20, 72|19.79911 +MACD|001606|ũҵ4.0 |2, 28, 22|29.37062 +MA|000462|ũֶ |15, 12, 93|34.61638 +MACD|000462|ũֶ |4, 15, 46|34.24478 +MA|001112|йƻ |19, 6, 22|29.07516 +MACD|001112|йƻ |19, 20, 27|28.59173 +MA|001281|ѡA |16, 8, 46|26.79772 +MACD|001281|ѡA |1, 50, 87|22.94161 +MA|002072|ѡC |16, 8, 46|26.71202 +MACD|002072|ѡC |1, 50, 87|22.8868 +MA|310388| |16, 49, 28|2.26845 +MACD|310388| |5, 9, 15|20.45848 +MA|519690|ȽûA |4, 14, 77|20.23216 +MACD|519690|ȽûA |2, 16, 86|12.16381 +MA|001076|׷ĸ |8, 25, 42|13.77119 +MACD|001076|׷ĸ |2, 16, 46|32.92077 +MA|530015|֤60 ӻ|15, 9, 34|28.01786 +MACD|530015|֤60 ӻ|4, 6, 62|27.11091 +MA|360007|󱣵û |8, 8, 85|17.34228 +MACD|360007|󱣵û |20, 11, 84|18.82594 +MA|540012|źͷָA Ʊָ|14, 56, 17|10.73188 +MACD|540012|źͷָA Ʊָ|19, 6, 38|10.88099 +MA|003119|ʱԴA |9, 23, 15|29.95984 +MACD|003119|ʱԴA |1, 46, 22|29.6994 +MA|004528|ʢʢͨծA none|1, 25, 10|27.26729 +MACD|004528|ʢʢͨծA none|1, 44, 70|26.91351 +MA|003120|ʱԴC |7, 26, 12|29.98995 +MACD|003120|ʱԴC |1, 28, 79|29.5992 +MA|660010|ũԾѡ |1, 11, 100|21.87402 +MACD|660010|ũԾѡ |12, 15, 57|26.63535 +MA|000423|ǰԴ¼A |6, 6, 37|27.10071 +MACD|000423|ǰԴ¼A |3, 10, 84|26.17073 +MA|519606|̩ Ʊ|11, 8, 99|14.74101 +MACD|519606|̩ Ʊ|12, 14, 82|14.61055 +MA|001044|ʵѹƱ Ʊ|15, 9, 91|24.05337 +MACD|001044|ʵѹƱ Ʊ|3, 6, 84|20.06904 +MA|001583|³̬Ʊ Ʊ|6, 6, 10|21.27152 +MACD|001583|³̬Ʊ Ʊ|3, 32, 22|18.07508 +MA|001208|ŵ̼ùƱ Ʊ|15, 13, 31|29.34498 +MACD|001208|ŵ̼ùƱ Ʊ|5, 16, 84|30.05486 +MA|160605|й50 |6, 6, 84|29.01738 +MACD|160605|й50 |19, 38, 22|26.05775 +MA|020026|̩ɳѡ |8, 8, 12|10.39039 +MACD|020026|̩ɳѡ |4, 23, 13|8.42245 +MA|001605|ɳѡƱ Ʊ|8, 8, 16|28.61427 +MACD|001605|ɳѡƱ Ʊ|4, 7, 62|31.60846 +MA|001703|Ʊ Ʊ|2, 12, 80|14.43299 +MACD|001703|Ʊ Ʊ|7, 8, 84|25.9319 +MA|001179|°󽡿û |18, 12, 79|27.19698 +MACD|001179|°󽡿û |7, 8, 27|26.6181 +MA|164906|֤йָ QDII-ָ|8, 8, 64|9.02807 +MACD|164906|֤йָ QDII-ָ|15, 21, 84|11.59911 +MA|519066|Ƚ |15, 11, 91|16.88678 +MACD|519066|Ƚ |2, 38, 79|14.4195 +MA|110011|׷С̻ |6, 6, 79|25.94807 +MACD|110011|׷С̻ |4, 15, 94|25.94807 +MA|160628|زּ Ʊָ|11, 10, 13|27.29184 +MACD|160628|زּ Ʊָ|7, 8, 62|25.01878 +MA|519746|ծȯA ծȯ|16, 33, 12|0.0 +MACD|519746|ծȯA ծȯ|4, 11, 80|1.63224 +MA|002853|ԪûA |9, 6, 91|0.54829 +MACD|002853|ԪûA |1, 7, 84|4.22898 +MA|241001|йɳ QDII|8, 8, 11|12.48513 +MACD|241001|йɳ QDII|5, 14, 85|10.5786 +MA|519068|ɳ |9, 8, 28|26.81625 +MACD|519068|ɳ |11, 18, 22|24.90172 +MA|001581|ͨѡû |8, 8, 76|25.13814 +MACD|001581|ͨѡû |4, 7, 62|25.46318 +MA|000634|ʢû |1, 36, 13|13.3687 +MACD|000634|ʢû |4, 8, 27|21.65084 +MA|161129|׷ԭA QDII|19, 6, 99|25.02004 +MACD|161129|׷ԭA QDII|4, 54, 37|17.57164 +MA|540009|Ѻ Ʊ|7, 48, 58|6.05222 +MACD|540009|Ѻ Ʊ|8, 9, 46|13.54252 +MA|000029|۲ |1, 44, 13|21.55451 +MACD|000029|۲ |6, 9, 27|30.78001 +MA|519225|ͨծȯ ծȯ|1, 29, 16|23.51001 +MACD|519225|ͨծȯ ծȯ|1, 13, 84|23.3129 +MA|570001|ŵ¼ֵƻ |16, 8, 46|23.1882 +MACD|570001|ŵ¼ֵƻ |3, 42, 31|20.67356 +MA|000934|лѡ QDII|10, 10, 13|13.59015 +MACD|000934|лѡ QDII|4, 8, 46|14.31654 +MA|160218|̩֤زҵָּ Ʊָ|7, 6, 16|21.30797 +MACD|160218|̩֤زҵָּ Ʊָ|7, 9, 49|18.98304 +MA|001712|ƾѡ |8, 8, 62|22.53789 +MACD|001712|ƾѡ |2, 24, 29|21.85712 +MA|161721|̻300زָּ Ʊָ|17, 12, 58|18.06743 +MACD|161721|̻300زָּ Ʊָ|17, 12, 46|18.83812 +MA|002124|㷢˲ҵ |13, 8, 91|28.12136 +MACD|002124|㷢˲ҵ |1, 44, 77|23.99838 +MA|000988|ʵȫƱ QDII|8, 7, 13|5.54386 +MACD|000988|ʵȫƱ QDII|19, 16, 79|4.88145 +MA|020023|̩¼Ի |20, 16, 100|23.64391 +MACD|020023|̩¼Ի |10, 15, 22|22.06978 +MA|160216|̩Ʒ QDII|19, 6, 99|23.82199 +MACD|160216|̩Ʒ QDII|11, 16, 79|20.05076 +MA|001518| |17, 14, 61|20.50531 +MACD|001518| |2, 23, 84|19.26242 +MA|398061|кѻ |2, 11, 72|7.73835 +MACD|398061|кѻ |6, 9, 62|27.09197 +MA|002666|ǰԴ³ɳA |3, 17, 79|17.69615 +MACD|002666|ǰԴ³ɳA |2, 23, 84|24.14857 +DMA|000751|ʵ˲ҵƱ Ʊ|15, 42, 19|5.46908 +MA|000751|ʵ˲ҵƱ Ʊ|7, 5, 79|19.78493 +MACD|000751|ʵ˲ҵƱ Ʊ|5, 7, 12|19.33581 +MA|162605|˳Ƕ(LOF) |5, 5, 57|32.75414 +MACD|162605|˳Ƕ(LOF) |7, 10, 22|30.93892 +MA|002851|ϷƷʻ |12, 7, 91|29.55376 +MACD|002851|ϷƷʻ |1, 15, 11|25.78834 +MA|169101| |19, 44, 28|10.23124 +MACD|169101| |7, 9, 9|8.33333 +MA|519772|û |7, 7, 84|34.97707 +MACD|519772|û |18, 19, 4|33.5086 +MA|270041|㷢Ʒѡ |7, 6, 79|25.93774 +MACD|270041|㷢Ʒѡ |2, 9, 10|25.66987 +MA|217027|Ӳƾ50ָA Ʊָ|9, 5, 29|26.60504 +MACD|217027|Ӳƾ50ָA Ʊָ|2, 37, 4|21.43469 +MA|163412|ȫʲ(LOF) |19, 6, 22|30.05601 +MACD|163412|ȫʲ(LOF) |7, 11, 21|30.00747 +MA|160127|Ϸѷּ Ʊ|17, 5, 22|20.32771 +MACD|160127|Ϸѷּ Ʊ|2, 19, 25|20.54125 +MA|001725|߶Ʊ Ʊ|19, 6, 22|32.36023 +MACD|001725|߶Ʊ Ʊ|2, 19, 25|28.70576 +MA|000173|30 |7, 7, 20|31.15095 +MACD|000173|30 |5, 13, 6|28.80672 +MA|002624|㷢ѡ |19, 6, 22|31.14472 +MACD|002624|㷢ѡ |4, 6, 4|31.39336 +MA|519008|ƾѡ |19, 6, 22|24.25781 +MACD|519008|ƾѡ |4, 10, 18|22.61552 +MA|000167|㷢ûA |2, 38, 39|10.14022 +MACD|000167|㷢ûA |20, 12, 14|22.93245 +MA|001371|ֵ |2, 38, 12|8.79377 +MACD|001371|ֵ |11, 14, 15|8.45617 +MA|376510|Ͷ Ʊ|5, 5, 34|16.99092 +MACD|376510|Ͷ Ʊ|5, 15, 18|15.59401 +MA|163406|ȫּ |19, 6, 22|27.97797 +MACD|163406|ȫּ |3, 11, 14|28.4111 + + diff --git a/stockdata/GAOpt100-1.txt b/stockdata/GAOpt100-1.txt new file mode 100644 index 0000000..6438053 --- /dev/null +++ b/stockdata/GAOpt100-1.txt @@ -0,0 +1,545 @@ +MA|002963|egold|2, 37, 12|2.3427 +MA|002963|egold|2, 37, 12|2.3427 +MACD|002963|egold|19, 11, 18|1.76252 +MA|003321|eoil|8, 7, 62|24.42502 +MACD|003321|eoil|5, 8, 25|24.19651 +MA|004744|eGEI|2, 55, 25|0.98452 +MACD|004744|eGEI|7, 4, 4|2.83792 +MA|110003|eSSE50|20, 20, 29|24.2869 +MACD|110003|eSSE50|2, 27, 5|18.14658 +MA|110020|HS300|19, 5, 84|13.12161 +MACD|110020|HS300|15, 6, 10|10.16974 +MA|110031|eHSI|7, 7, 10|14.36478 +MACD|110031|eHSI|1, 49, 23|10.21904 +MA|161130|eNASDAQ100|20, 7, 91|11.30478 +MACD|161130|eNASDAQ100|1, 19, 24|11.22633 +MA|110028|anxinB|1, 24, 12|4.72306 +MACD|110028|anxinB|8, 4, 30|5.43585 +MA|110022|eConsumption |7, 7, 27|31.46783 +MACD|110022|eConsumption |2, 8, 28|19.73073 +MA|161125|SPX500|9, 7, 12|10.50693 +MACD|161125|SPX500|1, 20, 7|9.38309 +MA|161725|֤׾ָּ Ʊָ|5, 9, 12|12.91174 +MACD|161725|֤׾ָּ Ʊָ|11, 4, 5|19.77912 +MA|160222|̩֤ʳƷҵָּ Ʊָ|19, 5, 57|29.4182 +MACD|160222|̩֤ʳƷҵָּ Ʊָ|3, 6, 5|23.90961 +MA|110022|׷ҵ Ʊ|7, 7, 27|31.46783 +MACD|110022|׷ҵ Ʊ|2, 8, 28|19.73073 +MA|000248|֤ҪETF ӻ|5, 5, 31|32.04681 +MACD|000248|֤ҪETF ӻ|3, 5, 7|27.19769 +MA|162605|˳Ƕ(LOF) |6, 5, 12|30.19003 +MACD|162605|˳Ƕ(LOF) |7, 8, 5|27.0848 +MA|260108|˳˳ɳ |6, 5, 12|19.0824 +MACD|260108|˳˳ɳ |7, 8, 5|16.2189 +MA|001740|й2025 |2, 43, 35|22.58922 +MACD|001740|й2025 |17, 6, 14|26.48373 +MA|160632|Ʒּ Ʊָ|19, 7, 84|22.10569 +MACD|160632|Ʒּ Ʊָ|3, 9, 7|18.46979 +MA|000083|ҵ |19, 6, 22|31.15011 +MACD|000083|ҵ |7, 8, 4|26.48062 +MA|180012|ԣ |19, 9, 65|22.00224 +MACD|180012|ԣ |6, 11, 10|13.47839 +MA|001542|̩+Ʊ Ʊ|1, 48, 94|12.82707 +MACD|001542|̩+Ʊ Ʊ|2, 15, 14|19.1224 +MA|070032|ʵŻ |16, 5, 91|27.15053 +MACD|070032|ʵŻ |15, 33, 4|12.92633 +MA|000619|ҵ |1, 24, 71|13.26834 +MACD|000619|ҵ |4, 11, 14|19.69273 +MA|004008|˼·A |1, 51, 10|1.73616 +MACD|004008|˼·A |18, 13, 25|2.36077 +MA|001112|йƻ |4, 55, 45|9.85887 +MACD|001112|йƻ |3, 15, 7|21.38199 +MA|481012|֤ ӻ|7, 7, 12|28.47518 +MACD|481012|֤ ӻ|7, 8, 25|28.47518 +MA|004009|˼·C |8, 50, 13|1.35105 +MACD|004009|˼·C |18, 15, 28|1.44043 +MA|519664|A |2, 15, 45|14.37127 +MACD|519664|A |7, 15, 4|28.40349 +MA|206007|ѡ |7, 7, 84|27.66545 +MACD|206007|ѡ |2, 8, 10|25.32238 +MA|001387|¾ûA |9, 31, 15|2.56616 +MACD|001387|¾ûA |8, 4, 25|2.5797 +MA|519665|C |2, 24, 47|14.24056 +MACD|519665|C |6, 7, 25|28.68753 +MA|310388| |6, 16, 86|4.18381 +MACD|310388| |4, 11, 7|11.53562 +MA|001208|ŵ̼ùƱ Ʊ|7, 7, 62|27.7392 +MACD|001208|ŵ̼ùƱ Ʊ|2, 13, 8|26.80584 +MA|000854|ϲҵ Ʊ|9, 7, 39|28.16949 +MACD|000854|ϲҵ Ʊ|2, 8, 9|25.44791 +MA|000462|ũֶ |19, 6, 22|28.55242 +MACD|000462|ũֶ |2, 8, 5|25.66163 +MA|000742|̩¾û |5, 5, 22|16.55535 +MACD|000742|̩¾û |1, 14, 24|16.2489 +MA|001076|׷ĸ |5, 5, 19|32.0736 +MACD|001076|׷ĸ |2, 10, 13|26.1899 +MA|001606|ũҵ4.0 |19, 6, 22|21.64179 +MACD|001606|ũҵ4.0 |11, 15, 28|21.57632 +MA|110003|׷֤50ָA Ʊָ|20, 20, 29|24.2869 +MACD|110003|׷֤50ָA Ʊָ|2, 27, 5|18.14658 +MA|001631|֤ʳƷָA Ʊָ|19, 5, 27|22.86178 +MACD|001631|֤ʳƷָA Ʊָ|4, 11, 4|19.33031 +MA|000431|Ʒƴл |16, 7, 61|28.51763 +MACD|000431|Ʒƴл |1, 16, 25|25.89481 +MA|550016|ųԶC ּܸ|20, 5, 82|46.33926 +MACD|550016|ųԶC ּܸ|10, 4, 4|44.37566 +MA|519066|Ƚ |6, 5, 12|14.86805 +MACD|519066|Ƚ |4, 19, 13|13.47087 +MA|040008|ѡ |7, 5, 20|17.60528 +MACD|040008|ѡ |1, 38, 7|13.20098 +MA|519690|ȽûA |1, 5, 27|3.55505 +MACD|519690|ȽûA |2, 17, 11|3.08913 +MA|001632|֤ʳƷָC Ʊָ|19, 6, 91|22.75947 +MACD|001632|֤ʳƷָC Ʊָ|4, 11, 4|19.24065 +MA|260116|˳ǺľA |8, 7, 62|26.6666 +MACD|260116|˳ǺľA |4, 13, 4|24.5517 +MA|165312|50 Ʊָ|1, 7, 73|11.34574 +MACD|165312|50 Ʊָ|8, 6, 5|7.57796 +MA|001287|A |5, 5, 10|23.77526 +MACD|001287|A |1, 26, 7|19.45345 +MA|260110|˳Ǿѡ |5, 5, 29|9.22322 +MACD|260110|˳Ǿѡ |2, 4, 12|9.58932 +MA|169101| |20, 28, 100|9.90889 +MACD|169101| |20, 6, 13|18.97201 +MA|001281|ѡA |14, 6, 91|24.27128 +MACD|001281|ѡA |20, 11, 14|17.60129 +MA|002072|ѡC |20, 10, 91|24.219 +MACD|002072|ѡC |20, 11, 14|17.55579 +MA|110011|׷С̻ |19, 6, 22|23.66928 +MACD|110011|׷С̻ |2, 8, 25|22.7685 +MA|519772|û |5, 57, 31|6.7283 +MACD|519772|û |3, 15, 27|19.28457 +MA|001170|̩˻ |2, 54, 74|12.54725 +MACD|001170|̩˻ |4, 12, 18|24.70781 +MA|660010|ũԾѡ |19, 6, 22|21.15983 +MACD|660010|ũԾѡ |8, 20, 10|11.73932 +MA|519068|ɳ |19, 6, 22|23.82055 +MACD|519068|ɳ |3, 17, 15|20.54364 +MA|360007|󱣵û |2, 31, 25|20.56427 +MACD|360007|󱣵û |18, 17, 7|22.79146 +MA|217027|Ӳƾ50ָA Ʊָ|7, 7, 15|21.20363 +MACD|217027|Ӳƾ50ָA Ʊָ|4, 10, 6|20.10648 +MA|020005|̩Ƚ |5, 5, 13|14.42656 +MACD|020005|̩Ƚ |2, 8, 30|3.78229 +MA|540012|źͷָA Ʊָ|5, 5, 10|17.80648 +MACD|540012|źͷָA Ʊָ|17, 11, 11|25.01403 +MA|530015|֤60 ӻ|18, 35, 23|13.79416 +MACD|530015|֤60 ӻ|4, 8, 15|24.13326 +MA|001044|ʵѹƱ Ʊ|9, 7, 12|18.82961 +MACD|001044|ʵѹƱ Ʊ|3, 9, 6|18.26466 +MA|519606|̩ Ʊ|13, 10, 89|2.93671 +MACD|519606|̩ Ʊ|13, 16, 14|9.7732 +MA|002851|ϷƷʻ |17, 14, 45|25.0769 +MACD|002851|ϷƷʻ |20, 12, 30|20.60417 +MA|519746|ծȯA ծȯ|16, 32, 12|0.0 +MACD|519746|ծȯA ծȯ|4, 6, 19|1.48818 +MA|241001|йɳ QDII|19, 5, 79|9.99438 +MACD|241001|йɳ QDII|20, 4, 7|7.57824 +MA|000173|30 |1, 28, 10|13.82716 +MACD|000173|30 |11, 14, 5|22.37067 +MA|100022|ǿ |13, 12, 59|9.76229 +MACD|100022|ǿ |6, 10, 18|14.14801 +MA|002853|ԪûA |7, 7, 79|2.5409 +MACD|002853|ԪûA |2, 8, 22|2.43367 +MA|020026|̩ɳѡ |1, 24, 98|2.06215 +MACD|020026|̩ɳѡ |14, 17, 13|9.37435 +MA|001703|Ʊ Ʊ|5, 5, 84|21.43973 +MACD|001703|Ʊ Ʊ|9, 12, 24|20.21688 +MA|001712|ƾѡ |2, 31, 60|9.81494 +MACD|001712|ƾѡ |2, 18, 12|17.42009 +MA|540009|Ѻ Ʊ|20, 5, 82|9.18962 +MACD|540009|Ѻ Ʊ|4, 28, 5|7.49183 +MA|519056|ͨȵ |19, 5, 28|25.97743 +MACD|519056|ͨȵ |6, 20, 27|24.92077 +MA|164906|֤йָ QDII-ָ|5, 5, 31|11.29221 +MACD|164906|֤йָ QDII-ָ|4, 7, 12|10.64234 +MA|160127|Ϸѷּ Ʊ|5, 5, 39|17.7383 +MACD|160127|Ϸѷּ Ʊ|19, 21, 28|15.63403 +MA|001179|°󽡿û |1, 24, 76|12.93788 +MACD|001179|°󽡿û |2, 25, 6|13.56331 +MA|260103|˳Ƕƽ |19, 6, 22|22.95207 +MACD|260103|˳Ƕƽ |5, 7, 27|22.95207 +MA|001371|ֵ |2, 38, 12|9.1751 +MACD|001371|ֵ |1, 11, 5|8.48011 +MA|001583|³̬Ʊ Ʊ|7, 5, 22|16.46919 +MACD|001583|³̬Ʊ Ʊ|6, 8, 24|17.67756 +MA|000934|лѡ QDII|5, 5, 22|11.98598 +MACD|000934|лѡ QDII|18, 15, 6|9.93118 +MA|020023|̩¼Ի |16, 11, 65|17.55517 +MACD|020023|̩¼Ի |6, 12, 24|17.55517 +MA|001725|߶Ʊ Ʊ|7, 7, 53|28.61564 +MACD|001725|߶Ʊ Ʊ|1, 23, 11|16.49532 +MA|270041|㷢Ʒѡ |7, 7, 84|21.50904 +MACD|270041|㷢Ʒѡ |8, 14, 13|21.50904 +MA|000751|ʵ˲ҵƱ Ʊ|7, 7, 80|14.7188 +MACD|000751|ʵ˲ҵƱ Ʊ|10, 15, 28|13.73035 +MA|001605|ɳѡƱ Ʊ|2, 10, 93|12.4878 +MACD|001605|ɳѡƱ Ʊ|3, 9, 9|21.4424 +MA|570001|ŵ¼ֵƻ |19, 6, 22|20.71597 +MACD|570001|ŵ¼ֵƻ |10, 44, 10|8.48075 +MA|110015|׷ҵȻ |19, 31, 23|2.97455 +MACD|110015|׷ҵȻ |7, 15, 4|13.6418 +MA|002624|㷢ѡ |1, 28, 27|10.57097 +MACD|002624|㷢ѡ |8, 14, 14|23.06265 +MA|163412|ȫʲ(LOF) |7, 7, 91|26.19975 +MACD|163412|ȫʲ(LOF) |5, 6, 5|26.19975 +MA|002666|ǰԴ³ɳA |3, 28, 78|7.89739 +MACD|002666|ǰԴ³ɳA |5, 11, 11|16.21011 +MA|180013|ȲԻ |19, 6, 22|23.81262 +MACD|180013|ȲԻ |4, 11, 30|17.53443 +MA|519008|ƾѡ |6, 38, 89|8.28596 +MACD|519008|ƾѡ |9, 18, 5|16.55979 +MA|003120|ʱԴC |8, 15, 85|31.23123 +MACD|003120|ʱԴC |2, 15, 6|31.1 +MA|002667|ǰԴ³ɳC |2, 41, 87|8.85945 +MACD|002667|ǰԴ³ɳC |5, 10, 9|15.94044 +MA|003119|ʱԴA |5, 5, 30|31.11 +MACD|003119|ʱԴA |2, 16, 5|30.97899 +MA|003243|ͶĦй QDII|19, 6, 22|20.5873 +MACD|003243|ͶĦй QDII|13, 14, 18|14.66119 +MA|310398|Ż300ֵָ Ʊָ|6, 5, 84|20.1868 +MACD|310398|Ż300ֵָ Ʊָ|11, 12, 15|19.01979 +MA|000634|ʢû |2, 28, 17|11.06087 +MACD|000634|ʢû |18, 19, 10|12.13345 +MA|000029|۲ |10, 5, 49|22.26549 +MACD|000029|۲ |4, 5, 25|22.26549 +MA|376510|Ͷ Ʊ|7, 7, 84|10.91174 +MACD|376510|Ͷ Ʊ|15, 10, 4|14.51515 +MA|118001|׷޾ѡ QDII|9, 7, 68|17.73667 +MACD|118001|׷޾ѡ QDII|3, 4, 4|16.97297 +MA|002121|㷢Ʊ Ʊ|5, 5, 20|22.18335 +MACD|002121|㷢Ʊ Ʊ|6, 4, 15|15.5304 +MA|002595|ʱҵ4.0Ʊ Ʊ|19, 10, 92|16.51665 +MACD|002595|ʱҵ4.0Ʊ Ʊ|8, 14, 14|15.78711 +MA|000988|ʵȫƱ QDII|19, 5, 79|5.25623 +MACD|000988|ʵȫƱ QDII|17, 4, 11|6.32999 +MA|001878|ʵѡƱ Ʊ|19, 6, 22|17.07622 +MACD|001878|ʵѡƱ Ʊ|10, 20, 28|13.01702 +MA|000835|ԪʱйA50ָ Ʊָ|5, 5, 16|23.74602 +MACD|000835|ԪʱйA50ָ Ʊָ|2, 26, 6|18.57745 +MA|160216|̩Ʒ QDII|5, 5, 22|26.06383 +MACD|160216|̩Ʒ QDII|5, 8, 19|26.73796 +MA|001236|ʱ˿·ƱA Ʊ|16, 5, 91|16.34311 +MACD|001236|ʱ˿·ƱA Ʊ|3, 16, 22|16.34311 +MA|002697|ŷƱC Ʊ|19, 6, 22|23.38723 +MACD|002697|ŷƱC Ʊ|3, 13, 21|21.53096 +MA|320010|ŵ֤100 Ʊָ|7, 5, 22|19.73492 +MACD|320010|ŵ֤100 Ʊָ|1, 8, 14|10.89744 +MA|160628|زּ Ʊָ|7, 7, 34|22.96029 +MACD|160628|زּ Ʊָ|3, 40, 24|20.03524 +MA|163406|ȫּ |4, 6, 62|15.65178 +MACD|163406|ȫּ |5, 6, 25|23.45624 +MA|002621|ŷƱA Ʊ|19, 6, 22|22.8198 +MACD|002621|ŷƱA Ʊ|2, 17, 24|21.07459 +MA|398061|кѻ |19, 16, 86|16.37537 +MACD|398061|кѻ |7, 11, 25|16.37537 +MA|001657|θȻ |16, 8, 70|25.35164 +MACD|001657|θȻ |17, 11, 18|17.23577 +MA|350005|й2025 |2, 50, 35|8.87772 +MACD|350005|й2025 |10, 14, 5|18.65999 +MA|002189|ũĸ |7, 7, 24|20.8751 +MACD|002189|ũĸ |3, 22, 15|11.69656 +MA|000127|ũҵȻ |10, 7, 39|20.25502 +MACD|000127|ũҵȻ |7, 25, 10|11.10177 +MA|161129|׷ԭA QDII|7, 7, 84|24.66741 +MACD|161129|׷ԭA QDII|5, 13, 26|24.42485 +MA|000167|㷢ûA |7, 7, 10|18.24881 +MACD|000167|㷢ûA |3, 9, 7|15.86179 +MA|519165|» |19, 6, 22|19.77556 +MACD|519165|» |4, 8, 29|19.77556 +MA|519702|ƻ |4, 45, 63|11.62672 +MACD|519702|ƻ |3, 7, 24|23.66049 +MA|000423|ǰԴ¼A |19, 6, 22|21.83107 +MACD|000423|ǰԴ¼A |5, 6, 8|21.16169 +MA|002124|㷢˲ҵ |19, 6, 22|22.08233 +MACD|002124|㷢˲ҵ |2, 26, 7|20.08566 +MA|160605|й50 |19, 7, 99|24.06592 +MACD|160605|й50 |4, 6, 8|20.00816 +MA|001892|ʢ˳ɳ |7, 7, 16|29.01588 +MACD|001892|ʢ˳ɳ |1, 39, 7|15.67735 +MA|001865|ǰԴ¼C |19, 6, 22|21.83232 +MACD|001865|ǰԴ¼C |3, 6, 11|21.20378 +MA|000020|˳ƷͶʻ |20, 43, 65|3.66622 +MACD|000020|˳ƷͶʻ |5, 11, 4|8.33023 +MA|002214|кֵѡ |19, 6, 22|8.74913 +MACD|002214|кֵѡ |7, 6, 10|7.77548 +MA|310358|¾û |18, 16, 65|2.1342 +MACD|310358|¾û |3, 20, 28|5.04307 +MA|002085|ʢ+ |7, 7, 16|29.2232 +MACD|002085|ʢ+ |1, 39, 8|15.99293 +MA|003940|ʢѡûϷʽ |17, 48, 91|5.21936 +MACD|003940|ʢѡûϷʽ |1, 18, 24|10.58112 +MA|004528|ʢʢͨծA none|1, 24, 10|27.2872 +MACD|004528|ʢʢͨծA none|1, 11, 9|27.08476 +MA|001581|ͨѡû |5, 5, 84|22.4601 +MACD|001581|ͨѡû |2, 11, 4|18.38473 +MA|002534|ȹծȯA ծȯ|9, 54, 57|0.0 +MACD|002534|ȹծȯA ծȯ|20, 9, 21|0.44229 +MA|000529|㷢ƻ |19, 6, 22|16.7311 +MACD|000529|㷢ƻ |14, 16, 9|14.91349 +MA|004374|̩˼ϷA |9, 7, 13|5.91029 +MACD|004374|̩˼ϷA |16, 4, 12|6.33173 +MA|004375|̩˼ϷC |9, 7, 13|5.81459 +MACD|004375|̩˼ϷC |17, 4, 12|6.36353 +MA|001681|»ֵû |7, 7, 62|23.98046 +MACD|001681|»ֵû |6, 7, 24|23.98046 +MA|004183|ҵ none|2, 10, 76|13.88915 +MACD|004183|ҵ none|6, 11, 25|21.56473 +MA|163411|ȫѡ |2, 55, 41|8.92616 +MACD|163411|ȫѡ |4, 5, 24|26.83414 +MA|001458|㷢֤ȫָҪA ӻ|16, 7, 91|19.30764 +MACD|001458|㷢֤ȫָҪA ӻ|2, 9, 24|15.97156 +MA|002976|㷢֤ȫָҪC ӻ|7, 7, 91|19.20761 +MACD|002976|㷢֤ȫָҪC ӻ|2, 15, 15|15.88894 +MA|163805|Ի |4, 6, 70|11.06403 +MACD|163805|Ի |3, 9, 8|6.54591 +MA|001528|ŵȽƱ Ʊ|7, 5, 22|23.68543 +MACD|001528|ŵȽƱ Ʊ|4, 8, 7|14.17792 +MA|003154|» |1, 57, 46|10.1251 +MACD|003154|» |2, 15, 28|19.22268 +MA|004357|Ϸǻۻ |2, 28, 39|9.35951 +MACD|004357|Ϸǻۻ |3, 11, 24|21.93866 +MA|001663|+Ʊ Ʊ|19, 5, 49|16.18394 +MACD|001663|+Ʊ Ʊ|19, 22, 26|16.64047 +MA|501018|Ϸԭ QDII|1, 48, 31|7.85182 +MACD|501018|Ϸԭ QDII|1, 13, 5|18.78048 +MA|001163|й30Ʊ Ʊ|19, 6, 22|20.77456 +MACD|001163|й30Ʊ Ʊ|2, 12, 24|18.76952 +MA|002989|ͨͨǬоѡ |1, 12, 13|13.45044 +MACD|002989|ͨͨǬоѡ |7, 4, 15|12.71702 +MA|001410|ŴԴҵƱ Ʊ|20, 9, 86|0.0 +MACD|001410|ŴԴҵƱ Ʊ|13, 10, 6|1.686 +MA|164508|֤100ָǿּ Ʊָ|7, 7, 84|19.19002 +MACD|164508|֤100ָǿּ Ʊָ|2, 31, 9|14.09542 +MA|000532|˳ҵ |19, 7, 91|23.48627 +MACD|000532|˳ҵ |3, 9, 5|21.16945 +MA|519732|֧˫Ϣƽ |5, 54, 42|6.54417 +MACD|519732|֧˫Ϣƽ |2, 8, 9|16.44217 +MA|002142|ʱû |6, 38, 13|3.15156 +MACD|002142|ʱû |3, 6, 4|3.59569 +MA|206002|ѡɳ |19, 6, 22|18.42954 +MACD|206002|ѡɳ |1, 38, 14|11.22717 +MA|001186|彡Ʊ Ʊ|3, 50, 43|5.65349 +MACD|001186|彡Ʊ Ʊ|14, 17, 26|13.47116 +MA|100026|Ƚѡ |1, 5, 34|3.74049 +MACD|100026|Ƚѡ |4, 8, 9|8.53868 +MA|001047|ĸƱ Ʊ|13, 8, 24|18.84208 +MACD|001047|ĸƱ Ʊ|2, 11, 28|18.01393 +MA|519196|û |2, 15, 10|9.83887 +MACD|519196|û |17, 12, 26|11.11495 +MA|519712|Ļ |3, 48, 12|9.07886 +MACD|519712|Ļ |4, 5, 18|11.91849 +MA|519035|첩 |19, 5, 79|17.46464 +MACD|519035|첩 |4, 17, 7|15.38408 +MA|003597|ʢʢڻC |19, 6, 22|16.63343 +MACD|003597|ʢʢڻC |1, 8, 26|10.61786 +MA|000001|ָ֤|9, 7, 33|13.30042 +MACD|000001|ָ֤|5, 42, 9|10.53893 +MA|000002|ָ|9, 7, 33|13.33075 +MACD|000002|ָ|5, 42, 9|10.55361 +MA|000003|¹ָ|8, 4, 16|7.82504 +MACD|000003|¹ָ|6, 35, 18|6.28743 +MA|000004|ҵָ|9, 7, 33|12.08445 +MACD|000004|ҵָ|2, 34, 6|11.47795 +MA|000005|ҵָ|9, 17, 21|3.35852 +MACD|000005|ҵָ|1, 8, 30|3.40761 +MA|000006|زָ|7, 6, 56|27.74703 +MACD|000006|زָ|9, 22, 8|27.25603 +MA|000007|ָ|1, 17, 26|2.8486 +MACD|000007|ָ|19, 13, 6|4.90651 +MA|000008|ۺָ|8, 5, 36|21.57696 +MACD|000008|ۺָ|3, 22, 15|20.34097 +MA|000009|֤380|9, 8, 22|7.19836 +MACD|000009|֤380|18, 11, 4|8.81905 +MA|000010|֤180|8, 6, 21|25.32315 +MACD|000010|֤180|2, 34, 30|24.36277 +MA|000011|ָ|9, 8, 40|11.25696 +MACD|000011|ָ|19, 27, 9|11.07025 +MA|000012|ծָ|9, 6, 46|0.92664 +MACD|000012|ծָ|7, 24, 10|0.7274 +MA|000013|ծָ|1, 20, 20|2.13239 +MACD|000013|ծָ|3, 22, 11|2.07276 +MA|000015|ָ|9, 6, 59|20.70243 +MACD|000015|ָ|7, 27, 4|20.6211 +MA|000016|֤50|5, 4, 22|34.11237 +MACD|000016|֤50|3, 42, 5|33.15233 +MA|000017|ָ|9, 6, 32|13.33326 +MACD|000017|ָ|5, 42, 9|10.55348 +MA|000018|180|10, 7, 48|32.38308 +MACD|000018|180|3, 38, 28|25.13646 +MA|000019|ָ|4, 4, 51|18.05163 +MACD|000019|ָ|19, 37, 30|18.28338 +MA|000021|180|9, 8, 51|26.01608 +MACD|000021|180|3, 50, 27|22.19288 +MA|000022|˾ծ|1, 10, 21|1.75054 +MACD|000022|˾ծ|1, 25, 4|1.73097 +MA|000025|180|5, 4, 34|5.54666 +MACD|000025|180|15, 22, 28|4.58516 +MA|000026|180Դ|4, 4, 22|28.92227 +MACD|000026|180Դ|16, 5, 30|19.46262 +MA|000027|180|4, 4, 49|32.85546 +MACD|000027|180|2, 31, 5|32.27131 +MA|000028|180ɳ|5, 4, 41|33.78924 +MACD|000028|180ɳ|1, 44, 4|35.79002 +MA|000030|180Rɳ|4, 4, 57|28.54271 +MACD|000030|180Rɳ|4, 34, 4|28.2352 +MA|000031|180Rֵ|5, 5, 27|23.22914 +MACD|000031|180Rֵ|1, 45, 25|21.05657 +MA|000032|֤Դ|4, 4, 34|13.21472 +MACD|000032|֤Դ|5, 11, 12|17.33865 +MA|000033|֤|5, 4, 34|24.85447 +MACD|000033|֤|16, 6, 19|13.40617 +MA|000034|֤ҵ|4, 4, 41|5.42947 +MACD|000034|֤ҵ|7, 20, 10|4.90636 +MA|000035|֤ѡ|5, 4, 41|8.66692 +MACD|000035|֤ѡ|19, 20, 27|7.69272 +MA|000036|֤|4, 4, 25|45.29508 +MACD|000036|֤|8, 21, 18|44.11303 +MA|000037|֤ҽҩ|5, 4, 41|19.43095 +MACD|000037|֤ҽҩ|7, 15, 29|16.77715 +MA|000038|֤|4, 4, 20|35.69207 +MACD|000038|֤|1, 38, 27|28.75442 +MA|000039|֤Ϣ|2, 8, 42|9.08734 +MACD|000039|֤Ϣ|3, 12, 4|8.22474 +MA|000040|֤|4, 4, 41|10.94645 +MACD|000040|֤|13, 30, 10|11.98957 +MA|000041|֤|5, 4, 57|1.17984 +MACD|000041|֤|10, 23, 7|0.0 +MA|000042|֤|4, 4, 41|24.06396 +MACD|000042|֤|15, 25, 11|20.54074 +MA|000043||4, 4, 31|26.06822 +MACD|000043||15, 28, 11|20.89461 +MA|000044|֤|4, 4, 49|12.20186 +MACD|000044|֤|14, 29, 9|11.95993 +MA|000045|֤С|5, 5, 41|5.57018 +MACD|000045|֤С|12, 22, 8|-0.09573 +MA|000046|֤С|4, 4, 26|5.40812 +MACD|000046|֤С|15, 29, 7|6.43986 +MA|000047|֤ȫָ|4, 4, 59|18.24753 +MACD|000047|֤ȫָ|15, 30, 11|17.72711 +MA|000048|ָ|4, 4, 35|28.85245 +MACD|000048|ָ|15, 30, 11|21.7464 +MA|000049|֤|4, 4, 38|23.661 +MACD|000049|֤|12, 25, 8|21.67459 +MA|000050|50Ȩ|4, 4, 41|18.17815 +MACD|000050|50Ȩ|15, 29, 11|15.96531 +MA|000051|180Ȩ|4, 4, 49|7.72909 +MACD|000051|180Ȩ|13, 29, 7|7.67015 +MA|000052|50|4, 4, 41|30.10156 +MACD|000052|50|10, 29, 8|22.09457 +MA|000053|180|4, 4, 41|25.12024 +MACD|000053|180|15, 30, 10|19.67431 +MA|399001|ָ֤|4, 4, 51|14.09072 +MACD|399001|ָ֤|11, 23, 7|9.38056 +MA|399002|ָR|4, 4, 54|14.15682 +MACD|399002|ָR|11, 23, 7|10.65939 +MA|399003|ɷݣָ|4, 4, 60|11.52215 +MACD|399003|ɷݣָ|15, 30, 11|10.09048 +MA|399004|֤100R|4, 4, 28|32.57285 +MACD|399004|֤100R|11, 22, 8|30.31821 +MA|399005|Сָ|4, 4, 35|15.31913 +MACD|399005|Сָ|13, 29, 9|10.21135 +MA|399006|ҵָ|4, 9, 37|0.32931 +MACD|399006|ҵָ|14, 24, 9|-3.47639 +MA|399007|֤300|4, 4, 31|17.80712 +MACD|399007|֤300|12, 22, 8|14.80193 +MA|399008|С300|4, 4, 46|8.0507 +MACD|399008|С300|14, 30, 7|4.17058 +MA|399009|֤200|1, 14, 27|0.99248 +MACD|399009|֤200|10, 25, 7|1.0173 +MA|399010|֤700|4, 8, 43|4.80871 +MACD|399010|֤700|15, 26, 11|0.0 +MA|399011|֤1000|4, 4, 56|2.00941 +MACD|399011|֤1000|15, 29, 10|6.30782 +MA|399012|ҵ300|2, 9, 42|0.07077 +MACD|399012|ҵ300|12, 30, 9|-3.4689 +MA|399013|оѡ|4, 4, 48|11.88163 +MACD|399013|оѡ|11, 22, 8|6.86013 +MA|399015|С|5, 7, 51|3.72382 +MACD|399015|С|10, 26, 9|-4.363 +MA|399016|֤|5, 15, 57|8.56922 +MACD|399016|֤|14, 28, 11|-4.28074 +MA|399017|SME|1, 14, 26|-0.02696 +MACD|399017|SME|13, 30, 11|-3.96341 +MA|399018|ҵ|1, 5, 59|1.07089 +MACD|399018|ҵ|15, 26, 11|0.0 +MA|399100|ָ|4, 14, 20|2.18547 +MACD|399100|ָ|11, 25, 11|5.12664 +MA|399101|С|1, 14, 27|-0.00375 +MACD|399101|С|15, 25, 11|1.40686 +MA|399102|ҵ|1, 4, 56|0.62591 +MACD|399102|ҵ|15, 29, 7|-3.28502 +MA|399103|ָָ|4, 4, 56|5.22897 +MACD|399103|ָָ|15, 26, 11|6.28425 +MA|399106|ָ֤|1, 13, 27|1.17366 +MACD|399106|ָ֤|10, 24, 7|3.74081 +MA|399107|ָ֤|2, 10, 29|1.17478 +MACD|399107|ָ֤|11, 22, 7|3.74137 +MA|399108|ָ֤|4, 4, 20|6.92561 +MACD|399108|ָ֤|11, 24, 11|5.8901 +MA|399231|ũָ|3, 14, 59|5.31592 +MACD|399231|ũָ|15, 30, 7|7.46542 +MA|399232|ɿָ|5, 4, 22|1.919 +MACD|399232|ɿָ|15, 30, 11|0.25213 +MA|399233|ָ|4, 11, 44|-0.14366 +MACD|399233|ָ|12, 22, 8|3.7001 +MA|399234|ˮָ|1, 5, 51|0.11406 +MACD|399234|ˮָ|10, 22, 9|-1.23743 +MA|399235|ָ|1, 5, 34|-0.00972 +MACD|399235|ָ|15, 30, 9|-7.84206 +MA|399236|ָ|5, 4, 27|0.27941 +MACD|399236|ָ|10, 24, 7|-0.02782 +MA|399237|ָ|1, 13, 27|1.44686 +MACD|399237|ָ|10, 22, 7|-8.33941 +MA|399238|ָ|1, 4, 34|1.07949 +MACD|399238|ָ|15, 27, 8|0.0 +MA|399239|ITָ|5, 9, 46|5.78768 +MACD|399239|ITָ|15, 26, 11|0.0 +MA|399240|ָ|1, 5, 20|7.15715 +MACD|399240|ָ|10, 23, 7|12.88254 +MA|399241|زָ|4, 4, 41|25.65285 +MACD|399241|زָ|15, 22, 9|24.85262 +MA|399242|ָ|1, 5, 31|4.09354 +MACD|399242|ָ|11, 24, 8|-8.7289 +MA|399243|ָ|4, 11, 29|22.65028 +MACD|399243|ָ|15, 29, 7|-8.68601 +MA|399244|ָ|4, 4, 41|2.72283 +MACD|399244|ָ|15, 24, 8|-1.9225 +MA|399248|Ļָ|2, 9, 45|4.41103 +MACD|399248|Ļָ|10, 24, 10|-4.64267 +MA|399249|ָ|1, 14, 27|-0.85169 +MACD|399249|ָ|15, 26, 8|0.0 +MA|399298|и|5, 14, 20|2.29562 +MACD|399298|и|10, 22, 7|1.1874 +MA|399299|е|4, 4, 41|2.77751 +MACD|399299|е|15, 26, 8|2.66597 +MA|399300|300|4, 4, 26|27.10965 +MACD|399300|300|14, 30, 7|26.35064 +MA|399301|ծ|3, 15, 20|2.55727 +MACD|399301|ծ|10, 26, 8|1.23422 +MA|399302|˾ծ|4, 14, 20|2.562 +MACD|399302|˾ծ|10, 22, 7|1.29736 +MA|399303|֤2000|5, 7, 44|3.89036 +MACD|399303|֤2000|10, 25, 7|0.95384 +MA|399306|֤ETF|4, 4, 28|20.96965 +MACD|399306|֤ETF|10, 24, 11|19.08031 +MA|399307|֤תծ|5, 4, 21|3.09106 +MACD|399307|֤תծ|12, 26, 9|2.15586 +MA|399310|֤50|4, 4, 41|42.71805 +MACD|399310|֤50|15, 26, 7|41.98073 +MA|001668|ȫ QDII|4, 4, 41|14.7401 +MACD|001668|ȫ QDII|15, 27, 10|8.03506 +MA|001659|¶ |4, 4, 41|18.09751 +MACD|001659|¶ |15, 30, 9|13.6374 +MA|100020|ֵ |1, 14, 57|2.89264 +MACD|100020|ֵ |10, 22, 7|10.62599 +MA|001714|ҵƱ Ʊ|2, 15, 43|9.38761 +MACD|001714|ҵƱ Ʊ|10, 22, 8|6.85927 +MA|519642| |4, 4, 41|17.48747 +MACD|519642| |10, 29, 7|10.0469 +MA|004263|û none|4, 4, 41|11.41803 +MACD|004263|û none|12, 26, 8|11.41803 +MA|004505|ʱ |4, 4, 41|18.40781 +MACD|004505|ʱ |13, 22, 7|12.73935 +MA|160218|̩֤زҵָּ Ʊָ|4, 4, 54|18.25133 +MACD|160218|̩֤زҵָּ Ʊָ|15, 29, 10|16.51388 diff --git a/stockdata/GAOpt100.txt b/stockdata/GAOpt100.txt new file mode 100644 index 0000000..55410a2 --- /dev/null +++ b/stockdata/GAOpt100.txt @@ -0,0 +1,453 @@ + +MACD|000018|180|15, 26, 8|22.30936 +MA|000019|ָ|6, 6, 29|17.80594 +MACD|000019|ָ|15, 30, 10|9.22657 +MA|000020|ָ|6, 14, 48|1.25486 +MACD|000020|ָ|10, 27, 8|-0.86807 +MA|000021|180|6, 6, 29|25.53164 +MACD|000021|180|15, 29, 10|20.75419 +MA|000022|˾ծ|2, 16, 23|1.73686 +MACD|000022|˾ծ|12, 22, 8|1.24243 +MA|000025|180|3, 9, 22|4.04991 +MACD|000025|180|12, 27, 7|1.22472 +MA|000026|180Դ|2, 13, 24|12.49502 +MACD|000026|180Դ|15, 30, 9|1.00286 +MA|000027|180|6, 18, 57|9.41673 +MACD|000027|180|11, 29, 7|31.92389 +MA|000028|180ɳ|5, 14, 35|11.03262 +MACD|000028|180ɳ|15, 29, 10|27.14122 +MA|000029|180ֵ|3, 12, 41|11.53913 +MACD|000029|180ֵ|14, 27, 8|21.95246 +MA|000030|180Rɳ|6, 15, 51|18.93202 +MACD|000030|180Rɳ|10, 28, 7|25.13673 +MA|000031|180Rֵ|3, 16, 55|9.67706 +MACD|000031|180Rֵ|15, 29, 10|19.60996 +MA|000032|֤Դ|2, 12, 21|12.48738 +MACD|000032|֤Դ|14, 26, 8|1.45369 +MA|000033|֤|3, 16, 21|9.19966 +MACD|000033|֤|15, 30, 8|0.76006 +MA|000034|֤ҵ|6, 12, 34|3.42715 +MACD|000034|֤ҵ|10, 22, 7|4.90636 +MA|000001|ָ֤|2, 16, 27|6.25213 +MACD|000001|ָ֤|15, 26, 8|8.8204 +MA|000002|ָ|2, 16, 27|6.27792 +MACD|000002|ָ|15, 26, 8|8.87341 +MA|000003|¹ָ|4, 13, 20|2.15388 +MACD|000003|¹ָ|15, 30, 10|6.11969 +MA|000004|ҵָ|2, 16, 23|5.54915 +MACD|000004|ҵָ|14, 26, 11|8.97696 +MA|000005|ҵָ|5, 12, 21|3.16432 +MACD|000005|ҵָ|15, 29, 11|0.0 +MA|000006|زָ|4, 12, 55|20.81004 +MACD|000006|زָ|15, 24, 9|20.01122 +MA|000007|ָ|2, 11, 25|2.8486 +MACD|000007|ָ|15, 29, 11|0.0 +MA|000008|ۺָ|5, 12, 41|10.04623 +MACD|000008|ۺָ|11, 26, 7|19.37983 +MA|000009|֤380|2, 7, 34|1.09071 +MACD|000009|֤380|13, 23, 11|4.62444 +MA|000010|֤180|2, 7, 56|9.42135 +MACD|000010|֤180|15, 29, 9|21.99683 +MA|000011|ָ|2, 9, 59|4.23744 +MACD|000011|ָ|14, 29, 10|11.07025 +MA|000012|ծָ|2, 16, 34|0.16567 +MACD|000012|ծָ|10, 24, 7|0.7274 +MA|000013|ծָ|2, 11, 27|2.08789 +MACD|000013|ծָ|12, 30, 10|2.06593 +MA|000015|ָ|3, 14, 50|10.0989 +MACD|000015|ָ|10, 24, 7|20.23897 +MA|000016|֤50|6, 10, 51|10.61882 +MACD|000016|֤50|15, 30, 10|25.42533 +MA|000017|ָ|2, 16, 27|6.27116 +MACD|000017|ָ|15, 26, 8|8.87827 +MA|000035|֤ѡ|3, 16, 20|4.18617 +MACD|000035|֤ѡ|10, 27, 7|7.19024 +MA|000036|֤|6, 12, 57|13.6696 +MACD|000036|֤|12, 22, 8|44.11303 +MA|000037|֤ҽҩ|5, 14, 43|2.65155 +MACD|000037|֤ҽҩ|15, 23, 7|16.77715 +MA|000038|֤|2, 17, 57|12.44444 +MACD|000038|֤|12, 30, 7|25.96199 +MA|000039|֤Ϣ|3, 7, 28|9.08734 +MACD|000039|֤Ϣ|14, 28, 11|-3.40234 +MA|000040|֤|6, 18, 27|17.68656 +MACD|000040|֤|13, 30, 10|11.98957 +MA|000041|֤|2, 14, 23|0.54543 +MACD|000041|֤|10, 23, 7|0.0 +MA|000042|֤|6, 18, 60|11.32065 +MACD|000042|֤|15, 25, 11|20.54074 +MA|000043||2, 7, 47|11.51203 +MACD|000043||15, 28, 11|20.89461 +MA|000044|֤|3, 17, 21|5.40083 +MACD|000044|֤|14, 29, 9|11.95993 +MA|000045|֤С|2, 15, 35|0.53516 +MACD|000045|֤С|12, 22, 8|-0.09573 +MA|000046|֤С|4, 18, 24|3.22797 +MACD|000046|֤С|14, 28, 8|6.43986 +MA|000047|֤ȫָ|5, 18, 48|7.11406 +MACD|000047|֤ȫָ|15, 31, 11|17.72711 +MA|000048|ָ|4, 17, 51|10.36821 +MACD|000048|ָ|15, 31, 12|22.32677 +MA|000049|֤|3, 11, 42|6.63345 +MACD|000049|֤|11, 25, 8|21.67459 +MA|000050|50Ȩ|3, 9, 34|8.93702 +MACD|000050|50Ȩ|15, 30, 12|16.57635 +MA|000051|180Ȩ|2, 12, 21|5.77748 +MACD|000051|180Ȩ|14, 31, 7|7.67015 +MA|000052|50|2, 9, 57|12.38291 +MACD|000052|50|11, 30, 8|22.09457 +MA|000053|180|4, 14, 56|10.46637 +MACD|000053|180|15, 26, 7|19.67431 +MA|399001|ָ֤|2, 18, 27|3.3799 +MACD|399001|ָ֤|15, 27, 12|9.46976 +MA|399002|ָR|2, 18, 27|3.35718 +MACD|399002|ָR|11, 22, 8|10.65939 +MA|399003|ɷݣָ|2, 12, 21|6.84482 +MACD|399003|ɷݣָ|9, 29, 7|11.52644 +MA|399004|֤100R|2, 16, 42|7.81221 +MACD|399004|֤100R|9, 21, 8|30.8456 +MA|399005|Сָ|2, 13, 56|-0.12722 +MACD|399005|Сָ|10, 28, 12|10.52294 +MA|399006|ҵָ|4, 12, 34|0.32931 +MACD|399006|ҵָ|10, 26, 12|-3.47639 +MA|399007|֤300|5, 14, 51|4.03324 +MACD|399007|֤300|9, 23, 6|14.80193 +MA|399008|С300|2, 13, 21|-0.28394 +MACD|399008|С300|15, 28, 6|4.17058 +MA|399009|֤200|4, 14, 45|0.08615 +MACD|399009|֤200|9, 21, 6|2.5679 +MA|399010|֤700|4, 8, 43|4.80871 +MACD|399010|֤700|14, 30, 11|0.0 +MA|399011|֤1000|4, 18, 37|1.64847 +MACD|399011|֤1000|15, 26, 10|6.30782 +MA|399012|ҵ300|4, 12, 27|0.07077 +MACD|399012|ҵ300|15, 29, 8|-3.4689 +MA|399013|оѡ|2, 18, 27|2.78964 +MACD|399013|оѡ|9, 25, 6|7.29704 +MA|399015|С|5, 7, 46|3.72382 +MACD|399015|С|11, 21, 6|0.79099 +MA|399016|֤|5, 15, 41|8.56922 +MACD|399016|֤|14, 30, 10|-4.25027 +MA|399017|SME|2, 6, 20|-0.14092 +MACD|399017|SME|9, 24, 6|2.73145 +MA|399018|ҵ|4, 9, 20|0.0 +MACD|399018|ҵ|15, 24, 11|0.0 +MA|399100|ָ|2, 19, 20|2.18547 +MACD|399100|ָ|14, 24, 9|5.12664 +MA|399101|С|5, 5, 46|3.58904 +MACD|399101|С|15, 25, 12|1.40686 +MA|399102|ҵ|5, 9, 29|0.0 +MACD|399102|ҵ|13, 30, 8|-3.28502 +MA|399103|ָָ|5, 5, 28|5.22897 +MACD|399103|ָָ|15, 25, 10|6.28425 +MA|399106|ָ֤|2, 9, 31|1.17366 +MACD|399106|ָ֤|9, 24, 8|3.74081 +MA|399107|ָ֤|2, 9, 31|1.17478 +MACD|399107|ָ֤|9, 24, 8|3.74137 +MA|399108|ָ֤|5, 5, 54|9.53845 +MACD|399108|ָ֤|13, 22, 9|5.98615 +MA|399231|ũָ|3, 14, 58|5.31592 +MACD|399231|ũָ|15, 30, 7|7.46542 +MA|399232|ɿָ|5, 9, 44|0.29197 +MACD|399232|ɿָ|15, 31, 10|0.25213 +MA|399233|ָ|5, 5, 42|6.0521 +MACD|399233|ָ|9, 24, 11|3.7001 +MA|399234|ˮָ|2, 5, 36|-0.30361 +MACD|399234|ˮָ|11, 23, 8|-1.23743 +MA|399235|ָ|5, 6, 56|1.35454 +MACD|399235|ָ|14, 28, 10|-7.84206 +MA|399236|ָ|5, 9, 48|-0.03059 +MACD|399236|ָ|9, 23, 8|-0.02782 +MA|399237|ָ|2, 9, 21|1.44686 +MACD|399237|ָ|15, 30, 12|-5.49396 +MA|399238|ָ|4, 6, 37|0.2954 +MACD|399238|ָ|14, 25, 8|0.0 +MA|399239|ITָ|5, 9, 45|5.78768 +MACD|399239|ITָ|15, 25, 12|0.0 +MA|399240|ָ|2, 9, 21|6.85854 +MACD|399240|ָ|9, 30, 6|12.88254 +MA|399241|زָ|5, 5, 51|26.19015 +MACD|399241|زָ|12, 24, 12|24.85262 +MA|399242|ָ|2, 9, 21|4.09354 +MACD|399242|ָ|9, 21, 6|2.62408 +MA|399243|ָ|4, 11, 28|22.65028 +MACD|399243|ָ|15, 31, 7|-7.98793 +MA|399244|ָ|5, 5, 28|2.72283 +MACD|399244|ָ|14, 22, 9|-1.9225 +MA|399248|Ļָ|3, 9, 30|4.41103 +MACD|399248|Ļָ|15, 25, 12|0.0 +MA|399249|ָ|2, 9, 21|-0.85169 +MACD|399249|ָ|11, 24, 7|0.0 +MA|399298|и|4, 18, 21|2.29562 +MACD|399298|и|9, 22, 6|1.49463 +MA|399299|е|5, 5, 28|2.76877 +MACD|399299|е|15, 24, 8|2.66597 +MA|399300|300|5, 5, 21|27.10965 +MACD|399300|300|14, 31, 10|26.35064 +MA|399301|ծ|2, 19, 24|2.55727 +MACD|399301|ծ|9, 24, 6|1.5308 +MA|399302|˾ծ|2, 16, 21|2.56587 +MACD|399302|˾ծ|9, 22, 6|1.76591 +MA|399303|֤2000|5, 7, 51|3.89036 +MACD|399303|֤2000|9, 29, 7|1.09386 +MA|399306|֤ETF|5, 5, 24|20.96965 +MACD|399306|֤ETF|9, 24, 8|19.08031 +MA|399307|֤תծ|4, 9, 20|2.22685 +MACD|399307|֤תծ|15, 25, 6|2.15586 +MA|399310|֤50|5, 5, 28|42.35191 +MACD|399310|֤50|14, 29, 6|41.98073 +MA|002963|egold|3, 18, 20|2.00703 +MACD|002963|egold|13, 29, 11|0.03044 +MA|003321|eoil|2, 9, 32|3.20248 +MACD|003321|eoil|15, 30, 10|18.47168 +MA|004744|eGEI|3, 9, 56|0.31462 +MACD|004744|eGEI|11, 31, 11|0.0 +MA|110003|eSSE50|5, 5, 28|22.44016 +MACD|110003|eSSE50|9, 22, 6|8.64163 +MA|110020|HS300|5, 5, 28|12.92021 +MACD|110020|HS300|14, 24, 7|0.0 +MA|110031|eHSI|5, 5, 28|17.44001 +MACD|110031|eHSI|15, 31, 10|11.74248 +MA|161130|eNASDAQ100|5, 5, 28|11.6675 +MACD|161130|eNASDAQ100|15, 24, 10|6.65961 +MA|110028|anxinB|5, 5, 24|4.65936 +MACD|110028|anxinB|15, 31, 12|2.72238 +MA|110022|eConsumption |5, 5, 28|32.07768 +MACD|110022|eConsumption |13, 30, 6|14.20697 +MA|161125|SPX500|5, 5, 28|11.17264 +MACD|161125|SPX500|9, 24, 6|5.88507 +MA|161725|֤׾ָּ Ʊָ|3, 17, 20|12.66606 +MACD|161725|֤׾ָּ Ʊָ|9, 24, 6|7.20346 +MA|160222|̩֤ʳƷҵָּ Ʊָ|5, 5, 28|29.16321 +MACD|160222|̩֤ʳƷҵָּ Ʊָ|9, 25, 9|10.29204 +MA|000248|֤ҪETF ӻ|5, 5, 28|31.82672 +MACD|000248|֤ҪETF ӻ|9, 24, 9|10.68504 +MA|162605|˳Ƕ(LOF) |5, 5, 28|30.03619 +MACD|162605|˳Ƕ(LOF) |15, 30, 11|8.03759 +MA|260108|˳˳ɳ |5, 5, 28|18.95496 +MACD|260108|˳˳ɳ |10, 22, 10|0.0 +MA|001740|й2025 |2, 9, 46|22.36529 +MACD|001740|й2025 |15, 24, 12|21.17808 +MA|160632|Ʒּ Ʊָ|5, 5, 28|23.81611 +MACD|160632|Ʒּ Ʊָ|9, 24, 6|10.75252 +MA|000083|ҵ |5, 5, 28|31.11461 +MACD|000083|ҵ |15, 25, 12|12.60671 +MA|001542|̩+Ʊ Ʊ|5, 5, 28|17.50802 +MACD|001542|̩+Ʊ Ʊ|15, 31, 12|10.18592 +MA|000619|ҵ |4, 9, 57|12.92338 +MACD|000619|ҵ |15, 25, 12|11.01842 +MA|070032|ʵŻ |5, 5, 28|26.68715 +MACD|070032|ʵŻ |13, 30, 12|12.19877 +MA|180012|ԣ |5, 5, 57|21.21962 +MACD|180012|ԣ |10, 24, 8|4.87535 +MA|481012|֤ ӻ|5, 5, 28|28.52387 +MACD|481012|֤ ӻ|9, 24, 6|20.15778 +MA|519664|A |4, 9, 41|13.87287 +MACD|519664|A |9, 24, 6|11.42729 +MA|001112|йƻ |5, 5, 28|23.53577 +MACD|001112|йƻ |9, 24, 8|6.71455 +MA|519665|C |4, 9, 41|13.73585 +MACD|519665|C |9, 24, 6|11.32039 +MA|001387|¾ûA |2, 9, 36|0.86907 +MACD|001387|¾ûA |15, 29, 12|0.0 +MA|310388| |5, 17, 33|1.94631 +MACD|310388| |15, 29, 12|1.15204 +MA|001076|׷ĸ |3, 11, 36|12.45559 +MACD|001076|׷ĸ |15, 30, 10|10.94844 +MA|206007|ѡ |4, 11, 35|11.48935 +MACD|206007|ѡ |15, 31, 12|11.34128 +MA|260116|˳ǺľA |5, 5, 28|27.74449 +MACD|260116|˳ǺľA |13, 30, 9|14.24889 +MA|000462|ũֶ |3, 11, 57|13.72375 +MACD|000462|ũֶ |15, 24, 12|11.32905 +MA|000742|̩¾û |5, 5, 28|14.26838 +MACD|000742|̩¾û |14, 24, 8|4.66296 +MA|001606|ũҵ4.0 |5, 5, 28|22.71381 +MACD|001606|ũҵ4.0 |13, 27, 10|8.94718 +MA|550016|ųԶC ּܸ|5, 5, 28|46.42819 +MACD|550016|ųԶC ּܸ|13, 24, 8|40.9415 +MA|001208|ŵ̼ùƱ Ʊ|5, 5, 28|26.22243 +MACD|001208|ŵ̼ùƱ Ʊ|9, 25, 7|10.86635 +MA|519772|û |5, 5, 33|7.32574 +MACD|519772|û |9, 24, 8|13.37339 +MA|260110|˳Ǿѡ |2, 9, 54|2.97532 +MACD|260110|˳Ǿѡ |15, 24, 7|-1.82216 +MA|000854|ϲҵ Ʊ|5, 11, 35|11.23595 +MACD|000854|ϲҵ Ʊ|9, 29, 6|18.5255 +MA|660010|ũԾѡ |5, 9, 58|9.29739 +MACD|660010|ũԾѡ |9, 24, 6|11.16404 +MA|165312|50 Ʊָ|2, 9, 20|2.80028 +MACD|165312|50 Ʊָ|14, 24, 8|0.0 +MA|040008|ѡ |5, 5, 45|17.21688 +MACD|040008|ѡ |9, 24, 6|7.42604 +MA|360007|󱣵û |2, 18, 21|20.28213 +MACD|360007|󱣵û |9, 24, 6|15.66665 +MA|169101| |2, 14, 57|9.25694 +MACD|169101| |14, 24, 8|7.90809 +MA|001631|֤ʳƷָA Ʊָ|5, 5, 28|22.53268 +MACD|001631|֤ʳƷָA Ʊָ|9, 21, 6|10.18305 +MA|001281|ѡA |5, 5, 21|23.91732 +MACD|001281|ѡA |14, 24, 6|10.05931 +MA|001287|A |5, 5, 28|21.04136 +MACD|001287|A |9, 24, 8|9.37687 +MA|000431|Ʒƴл |5, 11, 35|11.3846 +MACD|000431|Ʒƴл |15, 31, 12|11.07392 +MA|002072|ѡC |5, 5, 21|23.86419 +MACD|002072|ѡC |14, 21, 7|10.05757 +MA|519690|ȽûA |4, 7, 43|1.80661 +MACD|519690|ȽûA |11, 31, 11|-5.47862 +MA|001632|֤ʳƷָC Ʊָ|5, 5, 28|22.42101 +MACD|001632|֤ʳƷָC Ʊָ|9, 21, 6|10.11126 +MA|001170|̩˻ |5, 9, 43|10.9261 +MACD|001170|̩˻ |9, 24, 8|10.49067 +MA|519066|Ƚ |5, 5, 28|14.34914 +MACD|519066|Ƚ |9, 24, 6|0.94332 +MA|540009|Ѻ Ʊ|5, 5, 28|10.10499 +MACD|540009|Ѻ Ʊ|14, 24, 6|8.39297 +MA|110011|׷С̻ |5, 5, 28|23.0047 +MACD|110011|׷С̻ |15, 31, 11|9.72689 +MA|540012|źͷָA Ʊָ|5, 5, 32|14.3273 +MACD|540012|źͷָA Ʊָ|15, 24, 7|11.49186 +MA|530015|֤60 ӻ|5, 5, 28|23.85793 +MACD|530015|֤60 ӻ|9, 22, 6|17.86439 +MA|217027|Ӳƾ50ָA Ʊָ|5, 5, 21|20.89197 +MACD|217027|Ӳƾ50ָA Ʊָ|9, 21, 6|10.23026 +MA|001044|ʵѹƱ Ʊ|5, 5, 21|19.57668 +MACD|001044|ʵѹƱ Ʊ|9, 24, 6|6.10205 +MA|519068|ɳ |5, 5, 28|23.91683 +MA|000018|180|5, 5, 21|30.76524 +MACD|519068|ɳ |13, 34, 12|7.29549 +MA|270050|㷢¾û |3, 8, 50|3.38248 +MACD|270050|㷢¾û |3, 26, 8|6.71152 +MA|270041|㷢Ʒѡ |5, 9, 43|6.3973 +MACD|270041|㷢Ʒѡ |3, 38, 19|5.65656 +MA|502056|㷢ҽָּ Ʊָ|4, 18, 21|1.30692 +MACD|502056|㷢ҽָּ Ʊָ|3, 33, 7|1.19178 +MA|270042|㷢˹100ָ QDII-ָ|5, 5, 28|12.66666 +MACD|270042|㷢˹100ָ QDII-ָ|5, 26, 6|7.20149 +MA|270010|㷢300ETFA ӻ|5, 5, 28|9.83318 +MACD|270010|㷢300ETFA ӻ|7, 22, 11|5.37862 + +MA|002124|㷢˲ҵ|2, 9, 54|14.20545 +MACD|002124|㷢˲ҵ|3, 23, 6|14.9767 + +MA|002124|㷢˲ҵ|2, 9, 46|14.20545 +MACD|002124|㷢˲ҵ|3, 23, 6|14.63508 +MA|002963|egold|5, 6, 17|1.40699 +MACD|002963|egold|20, 26, 19|0.0 +MA|003321|eoil|5, 19, 10|16.64486 +MACD|003321|eoil|18, 26, 5|15.66147 +MA|004744|eGEI|2, 7, 13|0.68801 +MACD|004744|eGEI|19, 26, 10|0.0 +MA|110003|eSSE50|3, 19, 21|8.82616 +MACD|110003|eSSE50|3, 26, 5|15.25248 +MA|110020|HS300|2, 6, 55|6.33577 +MACD|110020|HS300|20, 39, 5|4.12515 +MA|110031|eHSI|3, 9, 19|10.72522 +MACD|110031|eHSI|3, 26, 13|10.08802 +MA|161130|eNASDAQ100|4, 10, 48|5.9706 +MACD|161130|eNASDAQ100|10, 26, 8|5.59138 +MA|110028|anxinB|2, 6, 8|3.53012 +MACD|110028|anxinB|15, 26, 13|0.44179 +MA|110022|eConsumption |5, 14, 60|13.26343 +MACD|110022|eConsumption |4, 27, 5|13.66247 +MA|161125|SPX500|2, 7, 22|2.63515 +MACD|161125|SPX500|4, 24, 12|5.59204 +MA|002124|㷢˲ҵ|2, 9, 46|14.20545 +MA|270007|㷢̳ɳ |5, 8, 42|6.85049 +MACD|270007|㷢̳ɳ |5, 26, 6|7.63547 +MA|270023|㷢ȫѡƱ(QDII) QDII|2, 9, 7|6.38554 +MACD|270023|㷢ȫѡƱ(QDII) QDII|18, 26, 8|3.88429 +MA|270002|㷢Ƚ |3, 9, 30|0.39729 +MACD|270002|㷢Ƚ |3, 24, 11|2.34982 +MA|270021|㷢 |3, 8, 18|0.55083 +MACD|270021|㷢 |9, 21, 20|0.0 +MA|162714|㷢֤100ָּ Ʊָ|3, 9, 60|3.12348 +MACD|162714|㷢֤100ָּ Ʊָ|5, 26, 8|0.61804 +MA|270001|㷢۸ |2, 7, 57|2.60364 +MACD|270001|㷢۸ |9, 26, 16|0.0 +MA|270025|㷢ҵȻA |2, 9, 59|8.20512 +MACD|270025|㷢ҵȻA |5, 26, 15|0.0 +MA|270028|㷢ҵѡ |2, 6, 46|0.55866 +MACD|270028|㷢ҵѡ |16, 26, 13|0.0 +MA|270027|㷢ȫũҵָ QDII-ָ|2, 17, 54|2.50809 +MACD|270027|㷢ȫũҵָ QDII-ָ|4, 21, 9|2.19256 +MA|270044|㷢˫ծծȯA ծȯ|5, 19, 44|2.33871 +MACD|270044|㷢˫ծծȯA ծȯ|4, 21, 5|2.07336 +MA|270006|㷢ѡ |5, 12, 55|2.23843 +MACD|270006|㷢ѡ |9, 22, 16|8.38594 +MA|270045|㷢˫ծծȯC ծȯ|4, 19, 57|2.1987 +MACD|270045|㷢˫ծծȯC ծȯ|3, 30, 5|1.76328 +MA|162719|㷢˹ʯָA QDII-ָ|5, 18, 32|10.05345 +MACD|162719|㷢˹ʯָA QDII-ָ|3, 33, 5|10.27079 +MA|270048|㷢ծծȯA ծȯ|2, 9, 11|0.0 +MACD|270048|㷢ծծȯA ծȯ|4, 33, 20|-0.25338 +MA|270049|㷢ծծȯC ծȯ|2, 9, 7|-0.00854 +MACD|270049|㷢ծծȯC ծȯ|16, 21, 10|0.0 +MA|270022|㷢 |5, 8, 9|0.41537 +MACD|270022|㷢 |4, 28, 19|3.84968 +MA|270029|㷢۲ծȯA ծȯ|4, 11, 55|0.62893 +MACD|270029|㷢۲ծȯA ծȯ|3, 36, 5|1.53218 +MA|270030|㷢۲ծȯB ծȯ|5, 15, 14|0.53832 +MACD|270030|㷢۲ծȯB ծȯ|3, 30, 5|1.27757 +MA|162703|㷢С̳ɳ(LOF) |2, 6, 13|0.15417 +MACD|162703|㷢С̳ɳ(LOF) |3, 36, 17|16.07934 +MA|270008|㷢ľѡ |2, 9, 21|1.3269 +MACD|270008|㷢ľѡ |3, 26, 7|2.23394 +MA|270026|㷢С300 ӻ|2, 9, 8|-1.47176 +MACD|270026|㷢С300 ӻ|3, 37, 6|5.50068 +MA|270005|㷢۷ |2, 7, 40|1.0468 +MACD|270005|㷢۷ |5, 30, 19|1.4657 +MA|501303|㷢͹ָA none|3, 8, 9|5.26208 +MACD|501303|㷢͹ָA none|16, 26, 17|0.0 +MA|004119|㷢û |5, 9, 7|5.21415 +MACD|004119|㷢û |3, 26, 7|12.67661 +MA|270009|㷢ǿծȯ ծȯ|5, 9, 16|0.43867 +MACD|270009|㷢ǿծȯ ծȯ|5, 26, 5|0.89029 +MA|004243|㷢˹ʯָC QDII-ָ|5, 19, 36|9.97267 +MACD|004243|㷢˹ʯָC QDII-ָ|3, 26, 6|10.04748 +MA|162712|㷢ծȯ(LOF) ծȯ|3, 12, 8|0.76706 +MACD|162712|㷢ծȯ(LOF) ծȯ|3, 30, 5|1.40935 +MA|003745|㷢Ԫ˹Ʊ Ʊ|5, 9, 18|1.67859 +MACD|003745|㷢Ԫ˹Ʊ Ʊ|3, 26, 7|4.92835 +MA|002976|㷢֤ȫָҪC ӻ|3, 12, 40|6.18633 +MACD|002976|㷢֤ȫָҪC ӻ|3, 36, 8|21.92601 +MA|002987|㷢300ETFC ӻ|5, 9, 57|9.83236 +MACD|002987|㷢300ETFC ӻ|9, 25, 9|18.17226 +MA|002624|㷢ѡ |3, 9, 30|22.22221 +MACD|002624|㷢ѡ |3, 26, 5|32.82629 +MA|002979|㷢֤ȫָڵزC ӻ|2, 6, 14|8.20811 +MACD|002979|㷢֤ȫָڵزC ӻ|20, 30, 7|21.42019 +MA|162711|㷢֤500ETFA ӻ|2, 9, 8|-0.50599 +MACD|162711|㷢֤500ETFA ӻ|3, 26, 6|6.36342 +MA|002939|㷢 |3, 9, 58|0.86664 +MACD|002939|㷢 |9, 21, 11|20.40406 +MA|004855|㷢֤ȫָָC none|5, 9, 55|-1.88826 +MACD|004855|㷢֤ȫָָC none|20, 26, 10|0.0 +MA|002121|㷢Ʊ Ʊ|2, 9, 54|9.89323 +MACD|002121|㷢Ʊ Ʊ|4, 26, 12|36.46479 +MA|005402|㷢ԴѡƱ none|2, 9, 14|3.2046 +MA|002863|ڳɳϷʽ |3, 9, 46|-0.18518 +MACD|002863|ڳɳϷʽ |16, 26, 17|0.0 +MA|164908|֤(LOF) Ʊָ|2, 6, 52|4.26195 +MACD|164908|֤(LOF) Ʊָ|17, 26, 13|0.0 +MA|501030|ָ֤A Ʊָ|4, 7, 52|4.12179 +MACD|501030|ָ֤A Ʊָ|14, 26, 15|0.0 +MA|501031|ָ֤C Ʊָ|4, 7, 52|4.15547 +MACD|501031|ָ֤C Ʊָ|15, 26, 13|0.0 +MA|001822|û |2, 6, 55|2.39453 +MACD|001822|û |3, 38, 9|2.96912 +MA|000800|δ |2, 7, 21|-0.43812 +MACD|000800|δ |3, 36, 20|-1.2987 +MA|630011|⾫ѡ |2, 12, 17|-0.50761 +MACD|630011|⾫ѡ |3, 23, 6|0.81522 +MA|000654|ҵ |2, 9, 10|-1.16279 +MACD|000654|ҵ |3, 22, 5|0.16794 +MA|630005|̶̬ |5, 12, 12|-0.53476 +MACD|630005|̶̬ |5, 21, 20|-1.63609 +MA|001679|ǰԴйϡȱʲA |5, 19, 58|2.45041 +MACD|001679|ǰԴйϡȱʲA |3, 26, 6|-2.80843 +MA|001071|ý廥 |2, 6, 55|-1.82167 +MACD|001071|ý廥 |15, 32, 13|11.54683 +MA|002079|ǰԴйϡȱʲC |4, 7, 15|0.22857 +MACD|002079|ǰԴйϡȱʲC |3, 21, 5|-2.6422 diff --git a/stockdata/IgnoreListStock.txt b/stockdata/IgnoreListStock.txt new file mode 100644 index 0000000..e69de29 diff --git a/stockdata/dongfangcf/399300.csv b/stockdata/dongfangcf/399300.csv new file mode 100644 index 0000000..fec7939 --- /dev/null +++ b/stockdata/dongfangcf/399300.csv @@ -0,0 +1,250 @@ +,Ʊ,,̼,߼,ͼ,̼,ǰ,ǵ,ǵ,,ɽ,ɽ,ֵ,ֵͨ +2018-02-02,'399300,300,4271.2326,4271.7647,4181.7793,4213.9386,4245.8978,25.3348,0.5967,,14606682700,1.91169867288e+11,, +2018-02-01,'399300,300,4245.8978,4287.3888,4214.2909,4276.3425,4275.8986,-30.0008,-0.7016,,19000293400,2.39230298932e+11,, +2018-01-31,'399300,300,4275.8986,4287.8576,4232.7727,4234.1101,4256.1021,19.7965,0.4651,,14521016400,1.94401798025e+11,, +2018-01-30,'399300,300,4256.1021,4308.5115,4251.5706,4286.6834,4302.0181,-45.916,-1.0673,,13903473000,1.86650566154e+11,, +2018-01-29,'399300,300,4302.0181,4395.9053,4287.1124,4387.0577,4381.2996,-79.2815,-1.8095,,19110035400,2.56176323789e+11,, +2018-01-26,'399300,300,4381.2996,4403.3375,4351.4871,4352.2211,4365.0794,16.2202,0.3716,,17722723700,2.23331309122e+11,, +2018-01-25,'399300,300,4365.0794,4392.1963,4336.2386,4381.9768,4389.8853,-24.8059,-0.5651,,19537495000,2.5030809187e+11,, +2018-01-24,'399300,300,4389.8853,4397.8196,4349.0865,4389.4547,4382.6129,7.2724,0.1659,,21981888900,2.8447080953e+11,, +2018-01-23,'399300,300,4382.6129,4383.5722,4346.7925,4346.8885,4336.5974,46.0155,1.0611,,20186758500,2.57113359897e+11,, +2018-01-22,'399300,300,4336.5974,4338.4832,4275.8977,4276.4811,4285.395,51.2024,1.1948,,17464319500,2.33960223311e+11,, +2018-01-19,'399300,300,4285.395,4316.5714,4269.6167,4281.9371,4271.4168,13.9782,0.3272,,20949057000,2.5855472536e+11,, +2018-01-18,'399300,300,4271.4168,4292.6372,4246.684,4259.375,4248.1164,23.3004,0.5485,,17203284600,2.25289688909e+11,, +2018-01-17,'399300,300,4248.1164,4283.3449,4230.5367,4261.7833,4258.473,-10.3566,-0.2432,,21431103200,2.84554359815e+11,, +2018-01-16,'399300,300,4258.473,4260.2118,4213.1275,4215.6247,4225.2393,33.2337,0.7866,,16149496300,2.28271224756e+11,, +2018-01-15,'399300,300,4225.2393,4262.9314,4216.3585,4229.8357,4225.001,0.2383,0.0056,,17090789700,2.34986586088e+11,, +2018-01-12,'399300,300,4225.001,4227.3923,4199.0251,4205.1444,4205.5863,19.4147,0.4616,,11135479400,1.57606210635e+11,, +2018-01-11,'399300,300,4205.5863,4211.799,4181.9572,4197.1136,4207.8132,-2.2269,-0.0529,,12157853900,1.70407305946e+11,, +2018-01-10,'399300,300,4207.8132,4211.0549,4175.1355,4187.2044,4189.2977,18.5155,0.442,,15112166600,1.94850253886e+11,, +2018-01-09,'399300,300,4189.2977,4191.2843,4153.5021,4157.5394,4160.1595,29.1382,0.7004,,13903429400,1.81975079758e+11,, +2018-01-08,'399300,300,4160.1595,4166.3182,4127.3081,4140.8545,4138.7505,21.409,0.5173,,17387766600,2.26403872932e+11,, +2018-01-05,'399300,300,4138.7505,4151.2818,4123.2817,4133.3439,4128.8119,9.9386,0.2407,,14900987200,1.85206293226e+11,, +2018-01-04,'399300,300,4128.8119,4137.642,4105.8858,4114.1213,4111.3925,17.4194,0.4237,,13454379400,1.74523556133e+11,, +2018-01-03,'399300,300,4111.3925,4140.0543,4088.7302,4091.4607,4087.4012,23.9913,0.587,,15185221800,2.05726889556e+11,, +2018-01-02,'399300,300,4087.4012,4087.7789,4045.2086,4045.2086,4030.8549,56.5463,1.4028,,14693543500,1.78402032874e+11,, +2017-12-29,'399300,300,4030.8549,4043.14,4012.8749,4022.8826,4018.8974,11.9575,0.2975,,9048668300,1.21257038529e+11,, +2017-12-28,'399300,300,4018.8974,4036.6975,3980.2358,3992.997,3991.2075,27.6899,0.6938,,11854288600,1.53636695762e+11,, +2017-12-27,'399300,300,3991.2075,4047.7366,3986.7385,4045.2793,4053.6224,-62.4149,-1.5397,,10515357700,1.40516907102e+11,, +2017-12-26,'399300,300,4053.6224,4056.8554,4015.2996,4040.6173,4041.5401,12.0823,0.299,,9111879000,1.19725100617e+11,, +2017-12-25,'399300,300,4041.5401,4086.9342,4026.4496,4057.4173,4054.5984,-13.0583,-0.3221,,9192696200,1.29938839152e+11,, +2017-12-22,'399300,300,4054.5984,4076.8028,4048.4913,4064.9131,4067.8485,-13.2501,-0.3257,,7347368400,1.04426496022e+11,, +2017-12-21,'399300,300,4067.8485,4080.781,4014.6526,4023.076,4030.4898,37.3587,0.9269,,9683608900,1.37819520871e+11,, +2017-12-20,'399300,300,4030.4898,4044.8485,4015.6285,4036.019,4035.3294,-4.8396,-0.1199,,9060450300,1.26812878124e+11,, +2017-12-19,'399300,300,4035.3294,4035.6296,3985.8233,3985.8233,3985.2914,50.038,1.2556,,7752898500,1.15998204342e+11,, +2017-12-18,'399300,300,3985.2914,4008.0688,3967.9343,3983.2965,3980.8558,4.4356,0.1114,,7785337500,1.11724349856e+11,, +2017-12-15,'399300,300,3980.8558,4020.2668,3974.9277,4018.7313,4026.1516,-45.2958,-1.125,,8904438900,1.18474144231e+11,, +2017-12-14,'399300,300,4026.1516,4057.6245,4013.8546,4050.9028,4050.0927,-23.9411,-0.5911,,8076886200,1.15086944924e+11,, +2017-12-13,'399300,300,4050.0927,4052.6878,4004.7436,4013.8319,4016.0163,34.0764,0.8485,,7754613100,1.1500638336e+11,, +2017-12-12,'399300,300,4016.0163,4070.1503,4015.4546,4068.5053,4069.4997,-53.4834,-1.3143,,8433871800,1.23515183182e+11,, +2017-12-11,'399300,300,4069.4997,4069.4997,4005.2687,4006.8784,4003.3792,66.1205,1.6516,,9714894600,1.48476588468e+11,, +2017-12-08,'399300,300,4003.3792,4014.1387,3955.44,3962.8288,3971.0569,32.3223,0.8139,,8928286100,1.24371230332e+11,, +2017-12-07,'399300,300,3971.0569,4017.9465,3955.9939,4003.5826,4015.8211,-44.7642,-1.1147,,9025404500,1.19651201504e+11,, +2017-12-06,'399300,300,4015.8211,4031.7533,3964.8087,4027.1231,4040.1704,-24.3493,-0.6027,,10928620500,1.4411495418e+11,, +2017-12-05,'399300,300,4040.1704,4045.9331,4006.5432,4007.9361,4018.8571,21.3133,0.5303,,15408707600,1.96337660258e+11,, +2017-12-04,'399300,300,4018.8571,4032.9859,3982.3182,3989.0466,3998.1365,20.7206,0.5183,,10264721900,1.38223055525e+11,, +2017-12-01,'399300,300,3998.1365,4027.1064,3984.3776,4003.5604,4006.0993,-7.9628,-0.1988,,9738691300,1.36010927567e+11,, +2017-11-30,'399300,300,4006.0993,4052.797,3988.0018,4034.0091,4053.7529,-47.6536,-1.1755,,10798334500,1.45829948321e+11,, +2017-11-29,'399300,300,4053.7529,4069.2418,4004.687,4061.3545,4055.8235,-2.0706,-0.0511,,12455364200,1.65743341284e+11,, +2017-11-28,'399300,300,4055.8235,4056.4753,4010.2955,4034.2057,4049.9475,5.876,0.1451,,10205809500,1.35539647289e+11,, +2017-11-27,'399300,300,4049.9475,4088.9318,4037.1457,4088.9318,4104.2034,-54.2559,-1.322,,14345526800,1.83004551222e+11,, +2017-11-24,'399300,300,4104.2034,4116.5942,4057.4894,4089.4723,4102.3966,1.8068,0.044,,13085804000,1.82912191367e+11,, +2017-11-23,'399300,300,4102.3966,4214.1895,4086.9018,4213.3781,4227.5666,-125.17,-2.9608,,17814722800,2.37536704704e+11,, +2017-11-22,'399300,300,4227.5666,4260.6395,4191.145,4228.3721,4217.7015,9.8651,0.2339,,18647700300,2.5429836169e+11,, +2017-11-21,'399300,300,4217.7015,4220.2636,4129.9783,4131.8482,4143.8334,73.8681,1.7826,,18035082100,2.53302199628e+11,, +2017-11-20,'399300,300,4143.8334,4144.5144,4060.9636,4093.734,4120.8508,22.9826,0.5577,,13744725800,1.91589637482e+11,, +2017-11-17,'399300,300,4120.8508,4122.3756,4081.3723,4094.0787,4105.0122,15.8386,0.3858,,19178411900,2.53079314045e+11,, +2017-11-16,'399300,300,4105.0122,4107.617,4062.2734,4063.4943,4073.6696,31.3426,0.7694,,12138441400,1.7290388058e+11,, +2017-11-15,'399300,300,4073.6696,4102.8071,4055.7167,4084.2131,4099.351,-25.6814,-0.6265,,12063569600,1.77753075436e+11,, +2017-11-14,'399300,300,4099.351,4133.5462,4086.8903,4129.2736,4128.0733,-28.7223,-0.6958,,14323693600,1.99605009025e+11,, +2017-11-13,'399300,300,4128.0733,4137.6455,4115.5507,4115.5507,4111.9112,16.1621,0.3931,,15144630900,2.05930794541e+11,, +2017-11-10,'399300,300,4111.9112,4116.7142,4067.657,4070.2763,4075.8998,36.0114,0.8835,,14181716500,1.98869833811e+11,, +2017-11-09,'399300,300,4075.8998,4076.6102,4038.4004,4043.0663,4048.0057,27.8941,0.6891,,12105633500,1.59247198176e+11,, +2017-11-08,'399300,300,4048.0057,4089.1457,4040.5772,4051.4935,4054.2465,-6.2408,-0.1539,,15082771900,2.00949740671e+11,, +2017-11-07,'399300,300,4054.2465,4064.2178,4021.3639,4022.4018,4020.8896,33.3569,0.8296,,15211666300,1.93990974032e+11,, +2017-11-06,'399300,300,4020.8896,4021.6382,3975.4069,3989.1824,3992.6979,28.1917,0.7061,,12208115900,1.58911861111e+11,, +2017-11-03,'399300,300,3992.6979,3999.3373,3963.0263,3992.3496,3997.1343,-4.4364,-0.111,,12940443900,1.58142056585e+11,, +2017-11-02,'399300,300,3997.1343,3999.2262,3971.3761,3994.0946,3996.6221,0.5122,0.0128,,12610057900,1.5198136364e+11,, +2017-11-01,'399300,300,3996.6221,4032.4581,3991.3235,4007.9116,4006.7179,-10.0958,-0.252,,13041738000,1.66477138571e+11,, +2017-10-31,'399300,300,4006.7179,4009.2828,3983.2565,3995.3935,4009.7218,-3.0039,-0.0749,,10917877900,1.42897206949e+11,, +2017-10-30,'399300,300,4009.7218,4033.3394,3960.2698,4022.1641,4021.9676,-12.2458,-0.3045,,15738760300,1.93489838439e+11,, +2017-10-27,'399300,300,4021.9676,4024.4645,3991.354,3992.5539,3993.5752,28.3924,0.711,,12667284600,1.52974831071e+11,, +2017-10-26,'399300,300,3993.5752,4013.5988,3973.5535,3980.0479,3976.949,16.6262,0.4181,,12989546500,1.70488618586e+11,, +2017-10-25,'399300,300,3976.949,3978.0893,3954.0011,3958.1669,3959.3953,17.5537,0.4433,,8820545800,1.06820309535e+11,, +2017-10-24,'399300,300,3959.3953,3959.4951,3922.0288,3926.2299,3930.7981,28.5972,0.7275,,9305815400,1.20192150584e+11,, +2017-10-23,'399300,300,3930.7981,3936.2729,3920.6562,3930.8914,3926.852,3.9461,0.1005,,8148498000,1.00280911371e+11,, +2017-10-20,'399300,300,3926.852,3928.9607,3910.1974,3918.5265,3931.2495,-4.3975,-0.1119,,7298018000,94529636639.4,, +2017-10-19,'399300,300,3931.2495,3944.0349,3923.6455,3940.5831,3944.1626,-12.9131,-0.3274,,10652725200,1.33189855169e+11,, +2017-10-18,'399300,300,3944.1626,3944.4106,3914.8152,3914.8152,3913.0688,31.0938,0.7946,,10096984100,1.2642037966e+11,, +2017-10-17,'399300,300,3913.0688,3924.6141,3900.4758,3910.7894,3913.4462,-0.3774,-0.0096,,8224122700,1.06708451684e+11,, +2017-10-16,'399300,300,3913.4462,3947.4239,3913.3224,3926.2754,3921.0017,-7.5555,-0.1927,,12135503300,1.50823756592e+11,, +2017-10-13,'399300,300,3921.0017,3927.1744,3908.8885,3912.975,3912.9536,8.0481,0.2057,,9014206800,1.14314854703e+11,, +2017-10-12,'399300,300,3912.9536,3917.4435,3897.5472,3902.0156,3902.6868,10.2668,0.2631,,9434092100,1.23147248618e+11,, +2017-10-11,'399300,300,3902.6868,3913.0695,3885.497,3886.8184,3889.8637,12.8231,0.3297,,10441815100,1.44152740056e+11,, +2017-10-10,'399300,300,3889.8637,3900.7418,3855.4666,3883.0037,3882.2076,7.6561,0.1972,,11253258600,1.57979737603e+11,, +2017-10-09,'399300,300,3882.2076,3918.8391,3876.0322,3910.1149,3836.5013,45.7063,1.1914,,13553585100,1.71941460832e+11,, +2017-09-29,'399300,300,3836.5013,3852.2236,3825.2021,3825.2021,3822.5386,13.9627,0.3653,,9330602800,1.16056776566e+11,, +2017-09-28,'399300,300,3822.5386,3827.3308,3813.7532,3821.5904,3821.2,1.3386,0.035,,9354406900,1.15646338522e+11,, +2017-09-27,'399300,300,3821.2,3832.566,3818.8147,3818.9646,3820.7816,0.4184,0.011,,8565581100,1.09299492247e+11,, +2017-09-26,'399300,300,3820.7816,3821.6928,3808.3827,3810.3333,3817.7915,2.9901,0.0783,,8186940700,1.01036334815e+11,, +2017-09-25,'399300,300,3817.7915,3835.3894,3811.1192,3829.219,3837.7304,-19.9389,-0.5195,,10394897600,1.35980239129e+11,, +2017-09-22,'399300,300,3837.7304,3842.252,3816.8225,3826.4589,3837.8176,-0.0872,-0.0023,,10061980200,1.28360894859e+11,, +2017-09-21,'399300,300,3837.8176,3860.7977,3837.384,3843.2577,3842.4353,-4.6177,-0.1202,,11109819200,1.44132893229e+11,, +2017-09-20,'399300,300,3842.4353,3850.9426,3827.8858,3830.1549,3832.1161,10.3192,0.2693,,10112954200,1.35041882371e+11,, +2017-09-19,'399300,300,3832.1161,3857.303,3820.2885,3849.8794,3843.1428,-11.0267,-0.2869,,11243298700,1.45528457523e+11,, +2017-09-18,'399300,300,3843.1428,3862.3589,3832.9626,3832.9626,3831.2965,11.8463,0.3092,,11793440500,1.52841028494e+11,, +2017-09-15,'399300,300,3831.2965,3843.297,3818.5234,3826.1448,3829.9554,1.3411,0.035,,12242700600,1.5347721518e+11,, +2017-09-14,'399300,300,3829.9554,3854.4931,3820.0876,3843.572,3842.6061,-12.6507,-0.3292,,11535858300,1.43111639152e+11,, +2017-09-13,'399300,300,3842.6061,3847.7841,3822.9441,3835.5493,3837.9341,4.672,0.1217,,9541078500,1.26254360933e+11,, +2017-09-12,'399300,300,3837.9341,3849.3885,3822.0037,3832.2422,3825.6453,12.2888,0.3212,,14419024200,1.8760531203e+11,, +2017-09-11,'399300,300,3825.6453,3850.7409,3817.5108,3828.3422,3825.9895,-0.3442,-0.009,,12388399700,1.54793900773e+11,, +2017-09-08,'399300,300,3825.9895,3843.0186,3813.9833,3830.0707,3829.8713,-3.8818,-0.1014,,10603650400,1.34958583983e+11,, +2017-09-07,'399300,300,3829.8713,3858.1617,3828.835,3851.688,3849.4499,-19.5786,-0.5086,,12388418100,1.56113397125e+11,, +2017-09-06,'399300,300,3849.4499,3858.2481,3831.3835,3846.7471,3857.0464,-7.5965,-0.197,,13139872300,1.55883314756e+11,, +2017-09-05,'399300,300,3857.0464,3865.2938,3841.9514,3845.5451,3845.6163,11.4301,0.2972,,12496415500,1.45779755314e+11,, +2017-09-04,'399300,300,3845.6163,3847.0906,3813.5537,3828.5447,3830.5383,15.078,0.3936,,14956632000,1.75551068278e+11,, +2017-09-01,'399300,300,3830.5383,3843.6176,3818.1586,3825.3392,3822.0928,8.4455,0.221,,15864551100,1.82770431967e+11,, +2017-08-31,'399300,300,3822.0928,3840.199,3800.8861,3835.8394,3834.3005,-12.2077,-0.3184,,13294493500,1.57079216083e+11,, +2017-08-30,'399300,300,3834.3005,3854.7062,3827.8607,3834.2682,3834.5376,-0.2371,-0.0062,,14135285700,1.66235122004e+11,, +2017-08-29,'399300,300,3834.5376,3847.9303,3825.7597,3839.1779,3842.7119,-8.1743,-0.2127,,12822707000,1.58978683685e+11,, +2017-08-28,'399300,300,3842.7119,3866.9422,3805.6567,3805.6567,3795.7544,46.9575,1.2371,,18557632500,2.36446280855e+11,, +2017-08-25,'399300,300,3795.7544,3795.9693,3736.2916,3736.2916,3734.6458,61.1086,1.6363,,12994090000,1.50697083062e+11,, +2017-08-24,'399300,300,3734.6458,3765.7082,3729.0876,3755.8902,3756.0884,-21.4426,-0.5709,,8994737200,1.07736019091e+11,, +2017-08-23,'399300,300,3756.0884,3772.4568,3741.7204,3747.6108,3752.298,3.7904,0.101,,10496157300,1.2408115571e+11,, +2017-08-22,'399300,300,3752.298,3758.2924,3734.5556,3745.7543,3740.9941,11.3039,0.3022,,10029285600,1.31131078398e+11,, +2017-08-21,'399300,300,3740.9941,3744.2631,3728.6157,3731.8399,3724.6748,16.3193,0.4381,,10031307300,1.23911716276e+11,, +2017-08-18,'399300,300,3724.6748,3733.4914,3700.4112,3707.1891,3721.277,3.3978,0.0913,,9656170500,1.23078163944e+11,, +2017-08-17,'399300,300,3721.277,3722.6239,3704.4126,3707.0668,3701.4207,19.8563,0.5365,,10865625100,1.3702000292e+11,, +2017-08-16,'399300,300,3701.4207,3707.144,3679.7338,3701.1337,3706.0566,-4.6359,-0.1251,,10413414100,1.27282165884e+11,, +2017-08-15,'399300,300,3706.0566,3719.2931,3692.2802,3695.78,3694.6831,11.3735,0.3078,,10644485700,1.24790630952e+11,, +2017-08-14,'399300,300,3694.6831,3698.3663,3651.3754,3651.3754,3647.3503,47.3328,1.2977,,11530845100,1.40233894117e+11,, +2017-08-11,'399300,300,3647.3503,3700.4944,3645.0945,3687.9314,3715.9208,-68.5705,-1.8453,,15038742100,1.61083470412e+11,, +2017-08-10,'399300,300,3715.9208,3746.8614,3688.1766,3724.962,3731.044,-15.1232,-0.4053,,13008512800,1.48005169417e+11,, +2017-08-09,'399300,300,3731.044,3738.999,3713.5668,3728.0319,3732.2129,-1.1689,-0.0313,,12467998900,1.37223598286e+11,, +2017-08-08,'399300,300,3732.2129,3737.3344,3718.8116,3724.3287,3726.7948,5.4181,0.1454,,13724192800,1.46481868918e+11,, +2017-08-07,'399300,300,3726.7948,3730.7774,3689.9552,3701.2161,3707.5796,19.2152,0.5183,,12423153000,1.34348537498e+11,, +2017-08-04,'399300,300,3707.5796,3738.7312,3707.003,3724.7225,3727.8264,-20.2468,-0.5431,,15747006000,1.68292664589e+11,, +2017-08-03,'399300,300,3727.8264,3766.3452,3718.4351,3755.1081,3760.8525,-33.0261,-0.8782,,14615394400,1.647104616e+11,, +2017-08-02,'399300,300,3760.8525,3784.3511,3759.2764,3768.1938,3770.3828,-9.5303,-0.2528,,17229338300,1.89336782813e+11,, +2017-08-01,'399300,300,3770.3828,3770.4043,3737.0954,3738.7364,3737.8732,32.5096,0.8697,,15254653900,1.73127578959e+11,, +2017-07-31,'399300,300,3737.8732,3746.5207,3713.655,3722.4282,3721.8914,15.9818,0.4294,,14842903900,1.60890133166e+11,, +2017-07-28,'399300,300,3721.8914,3725.5378,3696.7776,3703.4895,3712.1947,9.6967,0.2612,,11141139200,1.25817861948e+11,, +2017-07-27,'399300,300,3712.1947,3716.6888,3672.4971,3700.8558,3705.3884,6.8063,0.1837,,14500290400,1.61631225346e+11,, +2017-07-26,'399300,300,3705.3884,3738.5316,3684.1819,3722.8761,3719.559,-14.1706,-0.381,,13632521000,1.46518004915e+11,, +2017-07-25,'399300,300,3719.559,3752.1559,3713.2766,3742.6405,3743.4686,-23.9096,-0.6387,,12167205900,1.33531656186e+11,, +2017-07-24,'399300,300,3743.4686,3755.1902,3719.8488,3724.3778,3728.5976,14.871,0.3988,,13486872200,1.54701874682e+11,, +2017-07-21,'399300,300,3728.5976,3751.6947,3722.0656,3738.1847,3747.8843,-19.2867,-0.5146,,11794122600,1.41432632987e+11,, +2017-07-20,'399300,300,3747.8843,3750.1938,3723.0689,3725.1436,3729.7466,18.1377,0.4863,,14241003900,1.6926714994e+11,, +2017-07-19,'399300,300,3729.7466,3731.0468,3658.2035,3660.8665,3667.1807,62.5659,1.7061,,18247778700,1.98392451748e+11,, +2017-07-18,'399300,300,3667.1807,3667.5408,3622.0414,3648.4942,3663.5575,3.6232,0.0989,,12462205600,1.41472283974e+11,, +2017-07-17,'399300,300,3663.5575,3716.47,3621.3652,3700.6179,3703.094,-39.5365,-1.0677,,17882160000,1.96217253798e+11,, +2017-07-14,'399300,300,3703.094,3703.094,3672.7425,3682.6153,3686.9205,16.1735,0.4387,,10551400500,1.21021448889e+11,, +2017-07-13,'399300,300,3686.9205,3690.4832,3652.5658,3656.3502,3658.8236,28.0969,0.7679,,12566954900,1.46388679598e+11,, +2017-07-12,'399300,300,3658.8236,3691.5814,3640.5893,3672.6328,3670.8086,-11.985,-0.3265,,12228779200,1.43494599072e+11,, +2017-07-11,'399300,300,3670.8086,3701.2087,3645.9946,3646.8783,3653.6868,17.1218,0.4686,,11876082600,1.45084363277e+11,, +2017-07-10,'399300,300,3653.6868,3667.8455,3641.5277,3647.9379,3655.9293,-2.2425,-0.0613,,12059191000,1.41034626508e+11,, +2017-07-07,'399300,300,3655.9293,3657.1131,3631.8702,3647.6416,3660.0967,-4.1674,-0.1139,,10373549700,1.23465392616e+11,, +2017-07-06,'399300,300,3660.0967,3666.7745,3629.56,3654.5576,3659.6795,0.4172,0.0114,,10237924500,1.32837126778e+11,, +2017-07-05,'399300,300,3659.6795,3660.7291,3610.4586,3611.8984,3619.9841,39.6954,1.0966,,8823242500,1.20351565382e+11,, +2017-07-04,'399300,300,3619.9841,3646.8455,3611.6911,3646.828,3650.8463,-30.8622,-0.8453,,9507141300,1.25350417552e+11,, +2017-07-03,'399300,300,3650.8463,3667.5957,3633.7825,3667.2316,3666.7977,-15.9514,-0.435,,8882086000,1.15214687872e+11,, +2017-06-30,'399300,300,3666.7977,3669.7584,3646.2272,3654.7348,3668.8279,-2.0302,-0.0553,,8151002800,1.02459981992e+11,, +2017-06-29,'399300,300,3668.8279,3669.1345,3644.7331,3649.2525,3646.1666,22.6613,0.6215,,8558949800,1.11847266867e+11,, +2017-06-28,'399300,300,3646.1666,3672.1887,3644.0268,3664.1629,3674.7152,-28.5486,-0.7769,,9792085800,1.24465947132e+11,, +2017-06-27,'399300,300,3674.7152,3676.5328,3648.7635,3665.5775,3668.0919,6.6233,0.1806,,9755870200,1.23057231694e+11,, +2017-06-26,'399300,300,3668.0919,3671.9435,3627.0208,3627.0208,3622.8831,45.2088,1.2479,,13463799500,1.70736841952e+11,, +2017-06-23,'399300,300,3622.8831,3623.2352,3569.3225,3583.4359,3590.3425,32.5406,0.9063,,10512913400,1.33975111796e+11,, +2017-06-22,'399300,300,3590.3425,3635.5273,3581.3375,3583.5583,3587.955,2.3875,0.0665,,13552698700,1.69418803351e+11,, +2017-06-21,'399300,300,3587.955,3587.9863,3545.5666,3567.1256,3546.494,41.461,1.1691,,8785982400,1.17147797136e+11,, +2017-06-20,'399300,300,3546.494,3563.6964,3539.5149,3560.7871,3553.6653,-7.1713,-0.2018,,8050955900,98187595478.3,, +2017-06-19,'399300,300,3553.6653,3554.91,3520.0602,3520.0602,3518.7611,34.9042,0.9919,,7979714100,98572358252.0,, +2017-06-16,'399300,300,3518.7611,3536.1401,3514.3892,3522.9745,3528.7926,-10.0315,-0.2843,,7645270700,91462286376.5,, +2017-06-15,'399300,300,3528.7926,3542.2796,3508.9461,3530.7465,3535.2987,-6.5061,-0.184,,8263253500,1.06053901141e+11,, +2017-06-14,'399300,300,3535.2987,3571.2483,3530.274,3571.2483,3582.2674,-46.9687,-1.3111,,8381078300,1.06105319868e+11,, +2017-06-13,'399300,300,3582.2674,3584.4094,3559.2134,3569.1594,3574.3894,7.878,0.2204,,7517713800,94223084812.3,, +2017-06-12,'399300,300,3574.3894,3603.6901,3565.9012,3570.2191,3576.1703,-1.7809,-0.0498,,9038116700,1.17690802224e+11,, +2017-06-09,'399300,300,3576.1703,3590.8872,3560.6336,3561.2411,3560.9786,15.1917,0.4266,,10118826500,1.21700586716e+11,, +2017-06-08,'399300,300,3560.9786,3562.2724,3528.179,3531.2419,3533.8718,27.1068,0.7671,,9022490500,1.12035619671e+11,, +2017-06-07,'399300,300,3533.8718,3537.0947,3491.1328,3493.8846,3492.8816,40.9902,1.1735,,10441996800,1.24189288483e+11,, +2017-06-06,'399300,300,3492.8816,3492.8816,3460.4534,3464.3765,3468.7538,24.1278,0.6956,,6408938800,77868793729.6,, +2017-06-05,'399300,300,3468.7538,3484.1244,3462.3144,3480.1692,3486.5074,-17.7536,-0.5092,,7973815200,85609467477.1,, +2017-06-02,'399300,300,3486.5074,3498.1189,3470.2017,3491.5893,3497.7382,-11.2308,-0.3211,,8266801000,92850747181.0,, +2017-06-01,'399300,300,3497.7382,3499.8142,3476.4283,3485.2223,3492.8845,4.8537,0.139,,10312772400,1.16088766249e+11,, +2017-05-31,'399300,300,3492.8845,3515.0812,3474.9215,3495.073,3480.4345,12.45,0.3577,,10482974400,1.1596872531e+11,, +2017-05-26,'399300,300,3480.4345,3498.3148,3473.04,3479.6206,3485.6581,-5.2236,-0.1499,,10324115300,1.12585907354e+11,, +2017-05-25,'399300,300,3485.6581,3490.4176,3413.2246,3414.3992,3424.1669,61.4912,1.7958,,13072163100,1.36634020807e+11,, +2017-05-24,'399300,300,3424.1669,3424.1669,3383.8922,3409.7169,3424.194,-0.0271,-0.0008,,8355316100,92620045547.9,, +2017-05-23,'399300,300,3424.194,3434.7662,3401.5338,3405.0254,3411.2387,12.9553,0.3798,,11691103300,1.26767856025e+11,, +2017-05-22,'399300,300,3411.2387,3424.1776,3391.1748,3400.5882,3403.8492,7.3895,0.2171,,9253955900,99021121578.0,, +2017-05-19,'399300,300,3403.8492,3405.9448,3392.3776,3395.2318,3398.1127,5.7365,0.1688,,7147352500,78397081602.2,, +2017-05-18,'399300,300,3398.1127,3409.9319,3383.935,3387.6655,3409.9656,-11.8529,-0.3476,,8575958900,88091166041.4,, +2017-05-17,'399300,300,3409.9656,3433.9695,3408.1541,3423.19,3428.6491,-18.6835,-0.5449,,9973683700,1.10553451835e+11,, +2017-05-16,'399300,300,3428.6491,3428.8531,3373.552,3390.925,3399.1937,29.4554,0.8665,,10524241600,1.12814103201e+11,, +2017-05-15,'399300,300,3399.1937,3406.581,3391.5881,3391.5881,3385.3787,13.815,0.4081,,8297761100,92183332845.4,, +2017-05-12,'399300,300,3385.3787,3387.2677,3349.1671,3350.9371,3356.6459,28.7328,0.856,,9338646600,97522124594.3,, +2017-05-11,'399300,300,3356.6459,3359.6003,3312.8921,3322.9455,3337.7007,18.9452,0.5676,,10925289000,1.11576379054e+11,, +2017-05-10,'399300,300,3337.7007,3369.4345,3336.003,3350.6502,3352.5324,-14.8317,-0.4424,,9208262800,1.02194980791e+11,, +2017-05-09,'399300,300,3352.5324,3358.0463,3327.5901,3342.5981,3358.8125,-6.2801,-0.187,,7677166800,85528831748.9,, +2017-05-08,'399300,300,3358.8125,3374.1571,3339.5743,3369.1084,3382.5502,-23.7377,-0.7018,,12374928700,1.26885426472e+11,, +2017-05-05,'399300,300,3382.5502,3395.4532,3366.5568,3393.4831,3404.3864,-21.8362,-0.6414,,10989533300,1.17464939578e+11,, +2017-05-04,'399300,300,3404.3864,3421.3953,3391.277,3404.9379,3413.1282,-8.7418,-0.2561,,10348207500,1.06985952575e+11,, +2017-05-03,'399300,300,3413.1282,3432.2248,3403.0782,3421.7586,3426.5766,-13.4484,-0.3925,,9166962400,97854119098.4,, +2017-05-02,'399300,300,3426.5766,3436.3064,3418.6652,3427.9169,3439.753,-13.1764,-0.3831,,9279746200,1.01635858602e+11,, +2017-04-28,'399300,300,3439.753,3439.904,3417.2375,3439.5735,3446.7202,-6.9672,-0.2021,,10163235100,1.13761006698e+11,, +2017-04-27,'399300,300,3446.7202,3449.2723,3399.5392,3435.1017,3445.1832,1.537,0.0446,,12329842500,1.34610947828e+11,, +2017-04-26,'399300,300,3445.1832,3466.5651,3439.1505,3440.2526,3440.9743,4.2089,0.1223,,11194002900,1.31316579234e+11,, +2017-04-25,'399300,300,3440.9743,3449.6716,3422.6521,3427.7322,3431.2587,9.7156,0.2831,,9407214800,1.07599357209e+11,, +2017-04-24,'399300,300,3431.2587,3458.2279,3403.9792,3458.2279,3466.7865,-35.5278,-1.0248,,11466079100,1.22778154321e+11,, +2017-04-21,'399300,300,3466.7865,3475.5622,3449.5421,3461.389,3461.5481,5.2384,0.1513,,10441911000,1.15208831746e+11,, +2017-04-20,'399300,300,3461.5481,3465.6088,3440.7151,3444.5225,3445.8761,15.672,0.4548,,11418420800,1.33977258346e+11,, +2017-04-19,'399300,300,3445.8761,3459.3524,3418.514,3452.9904,3462.7429,-16.8668,-0.4871,,12134926400,1.27050362407e+11,, +2017-04-18,'399300,300,3462.7429,3489.0845,3462.6297,3474.8892,3479.9417,-17.1988,-0.4942,,11092782300,1.26790853425e+11,, +2017-04-17,'399300,300,3479.9417,3480.5696,3453.6759,3475.7381,3486.5045,-6.5628,-0.1882,,11716496100,1.23884371227e+11,, +2017-04-14,'399300,300,3486.5045,3517.4664,3476.9468,3516.8103,3514.5662,-28.0617,-0.7984,,13547407800,1.30425385379e+11,, +2017-04-13,'399300,300,3514.5662,3518.4385,3496.5699,3500.2838,3509.4387,5.1275,0.1461,,12998181300,1.33345929014e+11,, +2017-04-12,'399300,300,3509.4387,3523.0975,3497.9991,3514.5723,3517.328,-7.8893,-0.2243,,18182453700,2.02154571423e+11,, +2017-04-11,'399300,300,3517.328,3520.1315,3466.139,3503.8294,3505.1392,12.1888,0.3477,,16594583200,1.89457268655e+11,, +2017-04-10,'399300,300,3505.1392,3522.7955,3502.0826,3519.4597,3517.4634,-12.3242,-0.3504,,14188738000,1.55747834572e+11,, +2017-04-07,'399300,300,3517.4634,3526.815,3506.3885,3514.4521,3514.0469,3.4165,0.0972,,14029320400,1.44559675566e+11,, +2017-04-06,'399300,300,3514.0469,3517.7779,3495.7246,3507.9879,3503.8932,10.1537,0.2898,,13676700400,1.45221644165e+11,, +2017-04-05,'399300,300,3503.8932,3504.5379,3475.1486,3476.4231,3456.0455,47.8477,1.3845,,14339901700,1.60742981172e+11,, +2017-03-31,'399300,300,3456.0455,3456.3051,3430.8197,3434.8222,3436.758,19.2875,0.5612,,9157749100,1.0098490483e+11,, +2017-03-30,'399300,300,3436.758,3467.3049,3422.366,3461.6159,3465.1933,-28.4353,-0.8206,,11637692200,1.2208802163e+11,, +2017-03-29,'399300,300,3465.1933,3483.0571,3455.5529,3472.9665,3469.8093,-4.616,-0.133,,10485170600,1.14663468279e+11,, +2017-03-28,'399300,300,3469.8093,3482.2923,3461.4678,3480.249,3478.0385,-8.2292,-0.2366,,8419482000,97495938764.9,, +2017-03-27,'399300,300,3478.0385,3505.9789,3474.5206,3488.7647,3489.5997,-11.5612,-0.3313,,10701537700,1.24388012134e+11,, +2017-03-24,'399300,300,3489.5997,3499.3179,3461.1108,3464.1966,3461.9782,27.6215,0.7979,,12564583300,1.41752526681e+11,, +2017-03-23,'399300,300,3461.9782,3470.8164,3435.6912,3452.4056,3450.0502,11.928,0.3457,,9431806200,1.15813813702e+11,, +2017-03-22,'399300,300,3450.0502,3464.3328,3433.4994,3450.7544,3466.3468,-16.2966,-0.4701,,10493589400,1.23865640376e+11,, +2017-03-21,'399300,300,3466.3468,3466.7026,3445.6416,3449.7696,3449.6126,16.7342,0.4851,,8770785500,1.1352820139e+11,, +2017-03-20,'399300,300,3449.6126,3454.063,3429.8254,3449.0515,3445.8051,3.8075,0.1105,,8873432200,1.03769403896e+11,, +2017-03-17,'399300,300,3445.8051,3488.4969,3441.4685,3485.3114,3481.5066,-35.7015,-1.0255,,10375556000,1.2236891855e+11,, +2017-03-16,'399300,300,3481.5066,3492.1267,3472.2694,3472.2694,3463.6436,17.863,0.5157,,10633391300,1.24695573677e+11,, +2017-03-15,'399300,300,3463.6436,3463.9191,3445.2676,3452.2139,3456.6934,6.9502,0.2011,,7910495400,94056256666.8,, +2017-03-14,'399300,300,3456.6934,3465.3915,3448.9034,3456.6584,3458.098,-1.4046,-0.0406,,7707796300,95317564129.4,, +2017-03-13,'399300,300,3458.098,3458.098,3412.6879,3425.6723,3427.8916,30.2064,0.8812,,9168412400,1.08489140923e+11,, +2017-03-10,'399300,300,3427.8916,3436.2388,3423.9369,3423.9776,3426.9438,0.9478,0.0277,,7001619900,82161714922.6,, +2017-03-09,'399300,300,3426.9438,3443.0455,3414.6782,3442.8953,3448.7313,-21.7875,-0.6318,,8457038100,90090049489.8,, +2017-03-08,'399300,300,3448.7313,3457.0351,3441.2575,3452.2006,3453.9565,-5.2252,-0.1513,,7958769000,89124904682.2,, +2017-03-07,'399300,300,3453.9565,3454.0386,3440.0574,3446.1628,3446.484,7.4725,0.2168,,8033472000,94483824245.1,, +2017-03-06,'399300,300,3446.484,3449.0342,3425.9041,3427.2533,3427.8628,18.6212,0.5432,,8307088200,95178548495.5,, +2017-03-03,'399300,300,3427.8628,3428.8824,3412.8312,3424.6627,3435.0963,-7.2335,-0.2106,,8099465200,90009618835.2,, +2017-03-02,'399300,300,3435.0963,3468.471,3434.001,3463.4829,3458.4376,-23.3413,-0.6749,,8989807700,97876187925.2,, +2017-03-01,'399300,300,3458.4376,3472.6962,3449.109,3452.2058,3452.8103,5.6273,0.163,,10326035400,1.09317781348e+11,, +2017-02-28,'399300,300,3452.8103,3460.9089,3441.3589,3445.0274,3446.2228,6.5875,0.1912,,7521526000,81979307360.8,, +2017-02-27,'399300,300,3446.2228,3472.8356,3441.3938,3471.1319,3473.8517,-27.6289,-0.7953,,9867216000,1.06830874529e+11,, +2017-02-24,'399300,300,3473.8517,3473.8517,3455.2514,3468.9588,3473.3236,0.5281,0.0152,,9553513300,99875164758.6,, +2017-02-23,'399300,300,3473.3236,3492.9616,3460.118,3487.5745,3489.7567,-16.4331,-0.4709,,9953633000,1.06555922466e+11,, +2017-02-22,'399300,300,3489.7567,3489.946,3473.524,3483.2008,3482.823,6.9337,0.1991,,10281599400,1.09232425841e+11,, +2017-02-21,'399300,300,3482.823,3490.0855,3472.017,3475.0584,3471.3926,11.4304,0.3293,,11484200900,1.20675429543e+11,, +2017-02-20,'399300,300,3471.3926,3472.6035,3421.6434,3421.6434,3421.4419,49.9507,1.4599,,13262886200,1.34681505159e+11,, +2017-02-17,'399300,300,3421.4419,3457.5562,3419.6143,3443.6166,3440.9331,-19.4912,-0.5665,,11460003600,1.1803312967e+11,, +2017-02-16,'399300,300,3440.9331,3440.9331,3418.3514,3421.8299,3421.7131,19.22,0.5617,,10827696200,1.01809767504e+11,, +2017-02-15,'399300,300,3421.7131,3448.0322,3417.0811,3435.3882,3435.8042,-14.0911,-0.4101,,12764333800,1.24653179488e+11,, +2017-02-14,'399300,300,3435.8042,3440.6748,3424.4028,3438.511,3436.275,-0.4708,-0.0137,,9480946500,98537165438.0,, +2017-02-13,'399300,300,3436.275,3439.5432,3416.8746,3416.9168,3413.4868,22.7882,0.6676,,12014453800,1.25332998844e+11,, +2017-02-10,'399300,300,3413.4868,3422.3256,3398.0295,3398.3173,3396.2924,17.1944,0.5063,,12376872000,1.21908580284e+11,, +2017-02-09,'399300,300,3396.2924,3406.5888,3379.7872,3381.8992,3383.2878,13.0046,0.3844,,9755851500,1.02134228699e+11,, +2017-02-08,'399300,300,3383.2878,3383.6859,3347.4302,3361.7811,3365.6849,17.6029,0.523,,7540287900,82869735773.3,, +2017-02-07,'399300,300,3365.6849,3376.7099,3354.6251,3371.7695,3373.2051,-7.5202,-0.2229,,6375446200,69758178999.1,, +2017-02-06,'399300,300,3373.2051,3381.3348,3358.7516,3368.1081,3364.4923,8.7128,0.259,,6852136000,73408134767.9,, diff --git a/stockdata/stockcode.txt b/stockdata/stockcode.txt new file mode 100644 index 0000000..dc1e3cb --- /dev/null +++ b/stockdata/stockcode.txt @@ -0,0 +1,55 @@ +399006 ҵָ 1829.34 16.06 0.89% 39458473 6467087 1813.28 1811.11 1852.22 1807.51 +000003 Bָ 347.34 1.22 0.35% 205023 17374 346.12 346.39 347.49 346.25 +399106 ָ֤ 1960.74 -0.19 -0.01% 128435395 17864530 1960.93 1957.15 1962.11 1954.55 +399005 Сָ 7735.89 -2.66 -0.03% 42420988 5960737 7738.55 7729.53 7757.73 7722.33 +399002 ָR 13851.88 -14.75 -0.11% 46396882 5426701 13866.63 13843.70 13876.30 13809.35 +399001 ָ֤ 11595.22 -12.35 -0.11% 128435395 17864530 11607.57 11588.38 11615.67 11559.63 +000002 Aָ 3722.99 -5.36 -0.14% 145876081 17226990 3728.35 3723.83 3730.47 3695.32 +000001 ָ֤ 3554.40 -5.07 -0.14% 146081103 17244363 3559.47 3555.17 3561.50 3528.03 +000300 300 4369.30 -20.59 -0.47% 122636938 15661989 4389.89 4381.98 4383.15 4336.24 +399003 ɷBָ 6832.18 -33.66 -0.49% 159051 10004 6865.84 6872.14 6872.14 6811.48 +399550 50 7799.60 -50.88 -0.65% 18200029 3739922 7850.48 7848.96 7852.29 7750.90 +000016 ֤50 3158.30 -22.03 -0.69% 49732905 6206055 3180.33 3171.35 3171.35 3124.46 +000850 300ɫ 4245.92 86.29 2.07% 11472162 1023125 4159.64 4205.53 4251.30 4203.21 +000026 180Դ 3224.15 61.82 1.96% 16158750 1451073 3162.32 3201.67 3235.30 3192.40 +000811 ϸɫ 5901.84 104.68 1.81% 16203561 1612367 5797.16 5859.60 5911.04 5856.02 +000823 800ɫ 5317.98 91.67 1.75% 15125464 1523227 5226.31 5275.98 5322.13 5275.98 +000820 úָ̿ 3100.64 51.61 1.69% 5412616 578119 3049.03 3070.03 3133.42 3070.03 +399395 ֤ɫ 5253.67 96.73 1.88% 15733140 1510650 5156.94 5211.28 5256.40 5211.28 +399959 ָ 1169.73 21.32 1.86% 4785815 594991 1148.41 1146.33 1173.22 1145.74 +399436 ֤ú̿ 3556.77 64.14 1.84% 4945375 540165 3492.63 3518.18 3595.22 3518.18 +399368 ֤ 6382.16 112.45 1.79% 5008489 658014 6269.71 6255.30 6402.66 6251.64 +399232 ɿָ 2273.39 39.66 1.78% 2476069 262634 2233.73 2253.16 2283.69 2253.16 +000013 ծָ 213.93 0.01 0.01% 357067 34302 213.92 213.95 213.95 213.93 +000012 ծָ 161.18 0.01 0.00% 50643 4747 161.18 161.19 161.20 161.18 +000011 ָ 6470.11 -14.93 -0.23% 23075850 1361338 6485.04 6482.00 6482.00 6447.67 +000010 ֤180 9412.50 -40.68 -0.43% 84908334 9998669 9453.19 9435.60 9435.60 9326.03 + +000850 300ɫ ɷֹ 4245.92 86.29 2.07% 1.16% 1147 102 4159.64 4205.53 4251.30 4203.21 0.21% +00026 180Դ ɷֹ 3224.15 61.82 1.96% 1.36% 1616 145 3162.32 3201.67 3235.30 3192.40 0.17% +399959 ָ ɷֹ 1169.73 21.32 1.86% 2.39% 479 59.5 1148.41 1146.33 1173.22 1145.74 -0.04% +000811 ϸɫ ɷֹ 5901.84 104.68 1.81% 0.95% 1620 161 5797.16 5859.60 5911.04 5856.02 0.23% +399232 ɿָ ɷֹ 2273.39 39.66 1.78% 1.37% 248 26.3 2233.73 2253.16 2283.69 2253.16 0.05% +399973 ֤ ɷֹ 1267.51 21.43 1.72% 2.26% 192 33.2 1246.07 1244.21 1271.87 1243.67 -0.01% +000145 Դ ɷֹ 4454.13 74.04 1.69% 1.00% 1651 165 4380.09 4419.82 4462.17 4418.23 0.15% +000820 úָ̿ ɷֹ 3100.64 51.61 1.69% 2.08% 541 57.8 3049.03 3070.03 3133.42 3070.03 0.09% +399998 ֤ú̿ ɷֹ 1871.74 30.72 1.67% 2.07% 522 56.0 1841.02 1852.19 1890.22 1852.19 0.07% +000068 ֤Դ ɷֹ 2421.73 39.24 1.65% 1.06% 2187 203 2382.49 2405.38 2429.37 2404.21 0.14% +399944 ڵԴ ɷֹ 3201.32 52.05 1.65% 0.95% 2292 226 3149.27 3180.09 3210.05 3180.09 0.16% +000944 ڵԴ ɷֹ 3201.32 52.05 1.65% 0.95% 2292 226 3149.27 3180.09 3210.05 3180.09 0.14% +399961 ֤ ɷֹ 3065.16 49.03 1.63% 0.96% 2409 232 3016.13 3045.56 3074.63 3045.56 0.15% +399249 ָ ɷֹ 789.08 12.64 1.63% 1.91% 40.9 3.73 776.44 774.65 789.36 774.53 0.22% +000961 ֤ ɷֹ 3065.16 49.03 1.63% 0.96% 2409 232 3016.13 3045.56 3074.63 3045.56 0.14% +000909 300 ɷֹ 2736.49 43.57 1.62% 1.11% 1652 157 2692.92 2708.41 2737.78 2707.98 0.13% +399909 300 ɷֹ 2736.49 43.57 1.62% 1.11% 1652 157 2692.92 2708.41 2737.78 2707.98 0.16% +000094 ֤ ɷֹ 2753.92 43.62 1.61% 1.07% 2211 205 2710.30 2736.94 2763.75 2734.62 0.15% +000805 AԴ ɷֹ 4982.71 78.36 1.60% 1.04% 2399 231 4904.35 4944.11 4995.19 4944.11 0.09% +399967 ֤ ɷֹ 8691.95 136.86 1.60% 2.18% 486 66.6 8555.10 8536.23 8717.44 8530.89 -0.02% + +NDX ˹ + +AUM 281.70 1.90 0.68% 281.25 281.85 280.75 279.80 113890 58110 55780 289248 +AGTD T+D 3819 77 2.06% 3823 3765 3773 3742 2018-01-25 11:29:59 +GLNC COMEXƽ 1362.3 6.0 0.44% 1362.8 1355.2 1357.0 1356.3 2018-01-25 11:40:14 +SLNC COMEX 17.600 0.111 0.63% 17.605 17.470 17.555 17.489 2018-01-25 11:40:13 +NYMEX ԭ \ No newline at end of file diff --git a/stockdata/stockcodewangyiShangz.txt b/stockdata/stockcodewangyiShangz.txt new file mode 100644 index 0000000..08d6e25 --- /dev/null +++ b/stockdata/stockcodewangyiShangz.txt @@ -0,0 +1,40 @@ +15 000016 ֤50 3163.65 -16.68 -0.52% 0.01 59.32 739.64 3180.33 3171.35 3171.35 3124.46 +1 000001 ָ֤ 3561.27 1.80 0.05% 0.01 176.40 2076.49 3559.47 3555.17 3561.67 3528.03 +11 000011 ָ 6475.15 -9.89 -0.15% 0.01 29.48 170.01 6485.04 6482.00 6482.00 6447.67 +12 000012 ծָ 161.17 -0.01 -0.01% 0.00 619.12 5815.76 161.18 161.19 161.20 161.17 +13 000013 ծָ 213.94 0.02 0.01% 0.00 6124.99 5.90 213.92 213.95 213.95 213.93 +14 000015 ָ 3259.71 -5.43 -0.17% 0.01 42.04 416.80 3265.14 3261.86 3263.32 3227.47 +2 000002 ָ 3730.20 1.85 0.05% 0.01 176.15 2074.38 3728.35 3723.83 3730.62 3695.32 +4 000004 ҵָ 2789.62 14.52 0.52% 0.01 85.53 1030.47 2775.10 2779.36 2791.40 2771.46 +5 000005 ҵָ 3402.42 -20.87 -0.61% 0.01 9.80 136.18 3423.29 3403.73 3404.51 3383.14 +6 000006 زָ 8474.63 -72.33 -0.85% 0.03 8.05 103.09 8546.96 8522.93 8522.93 8285.62 +7 000007 ָ 6243.54 77.39 1.26% 0.02 22.44 198.31 6166.15 6158.51 6245.52 6143.97 +8 000008 ۺָ 3400.29 -24.20 -0.71% 0.02 50.58 608.43 3424.49 3410.31 3410.31 3358.02 +9 000009 ֤380 5738.29 19.59 0.34% 0.01 33.05 399.49 5718.70 5716.02 5740.00 5707.48 +10 000010 ֤180 9430.67 -22.52 -0.24% 0.01 101.75 1202.31 9453.19 9435.60 9435.60 9326.03 +16 000017 ָ 3007.77 1.48 0.05% 0.01 175.27 2054.03 3006.29 3002.66 3008.11 2979.65 +17 000018 180 6026.05 -58.45 -0.96% 0.02 37.51 463.68 6084.50 6054.17 6054.17 5961.10 +18 000019 ָ 1187.46 -1.79 -0.15% 0.01 81.87 921.37 1189.25 1187.24 1187.63 1175.56 +19 000020 ָ 1259.54 4.45 0.35% 0.01 13.35 171.05 1255.09 1253.29 1260.12 1251.21 +21 000022 ˾ծ 182.26 0.03 0.02% 0.00 3886.14 3.78 182.23 182.26 182.27 182.25 +22 000025 180 2059.36 19.26 0.94% 0.01 15.64 127.69 2040.10 2040.31 2060.44 2036.09 +23 000026 180Դ 3226.06 63.74 2.02% 0.01 18.60 170.54 3162.32 3201.67 3235.30 3192.40 +24 000027 180 1280.15 18.26 1.45% 0.03 7.64 73.89 1261.89 1255.10 1284.36 1248.99 +25 000028 180ɳ 3698.13 -24.73 -0.66% 0.02 25.17 460.85 3722.86 3719.03 3719.03 3658.68 +26 000029 180ֵ 4717.53 36.57 0.78% 0.02 86.46 889.36 4680.96 4668.04 4750.06 4667.99 +27 000030 180Rɳ 2314.55 9.49 0.41% 0.01 68.24 995.70 2305.06 2298.11 2323.21 2297.85 +28 000031 180Rֵ 3455.12 21.03 0.61% 0.02 122.27 1301.14 3434.09 3424.25 3477.60 3423.74 +29 000032 ֤Դ 1835.32 2.57 0.14% 0.02 9.96 89.04 1832.75 1822.04 1840.57 1811.43 +30 000033 ֤ 2421.70 -14.77 -0.61% 0.01 24.58 249.78 2436.47 2415.57 2431.66 2408.68 +31 000034 ֤ҵ 2557.26 24.12 0.95% 0.01 27.74 285.98 2533.14 2531.02 2567.08 2530.77 +32 000035 ֤ѡ 3056.99 13.06 0.43% 0.01 5.62 93.16 3043.93 3041.07 3066.65 3036.53 +33 000036 ֤ 9729.36 43.68 0.45% 0.01 3.97 97.98 9685.68 9677.09 9753.11 9665.87 +34 000037 ֤ҽҩ 7165.88 12.91 0.18% 0.01 3.29 78.36 7152.97 7148.10 7178.45 7135.69 +35 000038 ֤ 5935.56 30.56 0.52% 0.02 57.46 642.70 5905.00 5887.89 5991.23 5887.89 +36 000039 ֤Ϣ 3507.91 9.69 0.28% 0.01 3.59 65.71 3498.22 3491.05 3520.78 3487.43 +37 000040 ֤ 3446.78 -20.02 -0.58% 0.01 3.94 48.33 3466.80 3462.74 3471.74 3441.34 +38 000041 ֤ 2135.27 -4.12 -0.19% 0.00 4.03 24.82 2139.39 2137.18 2139.96 2129.41 +39 000042 ֤ 1842.06 10.62 0.58% 0.02 77.92 704.67 1831.44 1824.57 1855.44 1823.72 +44 000047 ֤ȫָ 3652.69 14.25 0.39% 0.01 171.44 1952.69 3638.44 3628.58 3669.26 3627.71 +45 000048 ָ 1629.02 11.85 0.73% 0.02 42.38 662.45 1617.17 1613.86 1638.91 1613.86 + diff --git a/stockdata/stockcodewangyiShenz.txt b/stockdata/stockcodewangyiShenz.txt new file mode 100644 index 0000000..f075708 --- /dev/null +++ b/stockdata/stockcodewangyiShenz.txt @@ -0,0 +1,32 @@ +44 399300 300 4381.30 16.22 0.37% 0.01 177.23 2233.31 4365.08 4352.22 4403.34 4351.49 +4 399004 ֤100R 6150.90 -22.31 -0.36% 0.01 39.58 604.90 6173.21 6160.29 6169.76 6104.60 +5 399005 Сָ 7745.61 7.06 0.09% 0.00 17.80 290.18 7738.55 7729.53 7757.73 7722.33 +6 399006 ҵָ 1829.05 15.78 0.87% 0.02 23.13 362.12 1813.28 1811.11 1852.23 1807.52 +1 399001 ָ֤ 11609.08 1.51 0.01% 0.00 183.43 2137.22 11607.57 11588.38 11615.67 11559.63 +2 399002 ָR 13868.43 1.80 0.01% 0.00 89.69 1274.81 13866.63 13843.70 13876.30 13809.35 +3 399003 ɷݣָ 6839.27 -26.57 -0.39% 0.01 684.43 4760.20 6865.84 6872.14 6872.14 6811.48 +7 399007 ֤300 4891.74 -4.21 -0.09% 0.01 71.73 1040.11 4895.94 4887.42 4896.02 4866.96 +8 399008 С300 1516.34 2.26 0.15% 0.01 31.88 461.04 1514.08 1512.11 1518.39 1510.71 +19 399101 С 11536.80 19.75 0.17% 0.00 50.96 718.94 11517.05 11499.73 11538.74 11486.09 +20 399102 ҵ 2255.72 13.58 0.61% 0.02 44.52 731.02 2242.14 2237.99 2273.78 2234.59 +22 399106 ָ֤ 1963.39 2.46 0.13% 0.00 151.46 2102.24 1960.93 1957.15 1963.50 1954.55 +25 399231 ũָ 1304.92 -1.36 -0.10% 0.01 1.38 16.93 1306.28 1305.54 1309.17 1299.11 +26 399232 ɿָ 2240.26 -25.98 -1.15% 0.01 2.63 27.23 2266.23 2246.23 2250.29 2236.89 +27 399233 ָ 2140.18 -3.08 -0.14% 0.01 102.41 1489.77 2143.26 2137.76 2147.12 2135.74 +28 399234 ˮָ 905.77 -3.70 -0.41% 0.00 2.32 19.88 909.47 907.13 909.12 905.55 +29 399235 ָ 1920.25 -5.25 -0.27% 0.01 3.52 40.54 1925.50 1921.58 1932.85 1915.81 +30 399236 ָ 1842.84 -8.87 -0.48% 0.01 3.86 46.77 1851.71 1849.68 1854.96 1841.82 +31 399237 ָ 1413.79 12.13 0.87% 0.01 2.81 30.57 1401.65 1397.94 1416.19 1396.16 +32 399238 ָ 1552.27 1.40 0.09% 0.01 681.37 5642.95 1550.87 1550.72 1558.33 1548.42 +33 399239 ITָ 1916.67 -2.49 -0.13% 0.01 18.30 288.61 1919.16 1909.19 1929.22 1908.81 +34 399240 ָ 1214.24 -3.23 -0.27% 0.01 10.79 128.40 1217.47 1213.20 1229.56 1211.64 +35 399241 زָ 3534.74 28.48 0.81% 0.02 12.08 152.71 3506.25 3495.92 3568.30 3486.03 +36 399242 ָ 1756.70 -3.63 -0.21% 0.01 4.43 46.98 1760.33 1760.08 1767.58 1752.78 +37 399243 ָ 2109.66 -21.53 -1.01% 0.01 8605.52 20.47 2131.19 2120.98 2130.12 2107.19 +38 399244 ָ 1589.49 -9.40 -0.59% 0.01 1.32 24.18 1598.89 1595.06 1600.14 1588.04 +39 399248 Ļָ 1522.97 6.39 0.42% 0.01 4.35 55.08 1516.59 1512.72 1529.41 1509.72 +40 399249 ָ 779.22 -6.70 -0.85% 0.01 4987.54 4.87 785.92 784.81 784.81 778.12 +45 399301 ծ 158.50 0.02 0.01% 0.00 386.88 3.78 158.49 158.51 158.54 158.50 +46 399302 ˾ծ 161.68 0.02 0.01% 0.00 386.73 3.78 161.66 161.68 161.70 161.67 +48 399306 ֤ETF 1284.04 6.12 0.48% 0.01 13.15 22.38 1277.92 1276.90 1288.05 1275.22 +49 399307 ֤תծ 191.68 0.20 0.10% 0.01 489.12 5.12 191.49 191.55 192.14 191.16 diff --git a/stockdata/stockcodewangyidetail.txt b/stockdata/stockcodewangyidetail.txt new file mode 100644 index 0000000..adf8502 --- /dev/null +++ b/stockdata/stockcodewangyidetail.txt @@ -0,0 +1,3 @@ +1 W00004 վ225 +2 W00031 ¹DAXָ +3 HSI001 ָ \ No newline at end of file diff --git a/stockdata/stockcodewangyiqdii.txt b/stockdata/stockcodewangyiqdii.txt new file mode 100644 index 0000000..e06990d --- /dev/null +++ b/stockdata/stockcodewangyiqdii.txt @@ -0,0 +1,2 @@ +1 NASDAQ ˹ 3561.27 1.80 0.05% 0.01 176.40 2076.49 3559.47 3555.17 3561.67 3528.03 +2 SP500 500 3730.20 1.85 0.05% 0.01 176.15 2074.38 3728.35 3723.83 3730.62 3695.32 \ No newline at end of file diff --git a/trade_process/__init__.py b/trade_process/__init__.py index 9d4bb85..1f56271 100644 --- a/trade_process/__init__.py +++ b/trade_process/__init__.py @@ -1 +1 @@ -__author__ = 'cbb' +__author__ = 'cbb' diff --git a/trade_process/__init__.pyc b/trade_process/__init__.pyc new file mode 100644 index 0000000..c6e600f Binary files /dev/null and b/trade_process/__init__.pyc differ diff --git a/trade_process/dongfangcf/399307.csv b/trade_process/dongfangcf/399307.csv new file mode 100644 index 0000000..678844c --- /dev/null +++ b/trade_process/dongfangcf/399307.csv @@ -0,0 +1,246 @@ +,Ʊ,,̼,߼,ͼ,̼,ǰ,ǵ,ǵ,,ɽ,ɽ,ֵ,ֵͨ +2018-01-26,'399307,֤תծ,191.6822,192.1395,191.1625,191.5485,191.4865,0.1957,0.1022,,4891199,512406147.931,, +2018-01-25,'399307,֤תծ,191.4865,191.9322,189.5327,189.5327,189.5787,1.9078,1.0063,,7160037,743034134.523,, +2018-01-24,'399307,֤תծ,189.5787,189.5932,187.9129,187.9954,188.0245,1.5542,0.8266,,3965334,403408272.655,, +2018-01-23,'399307,֤תծ,188.0245,188.2967,187.3681,187.8975,187.5066,0.5179,0.2762,,2953724,302123248.662,, +2018-01-22,'399307,֤תծ,187.5066,187.6527,185.0705,185.2946,185.1969,2.3097,1.2472,,2952880,313359809.36,, +2018-01-19,'399307,֤תծ,185.1969,185.6881,184.6927,184.8541,185.0765,0.1204,0.0651,,1781952,181597265.692,, +2018-01-18,'399307,֤תծ,185.0765,185.111,184.066,184.1763,184.4281,0.6484,0.3516,,2335703,239026520.59,, +2018-01-17,'399307,֤תծ,184.4281,185.4243,183.4969,184.6081,184.5247,-0.0966,-0.0524,,2492686,247824871.068,, +2018-01-16,'399307,֤תծ,184.5247,184.9917,184.4632,184.7083,184.6735,-0.1488,-0.0806,,1560711,156296391.237,, +2018-01-15,'399307,֤תծ,184.6735,186.6803,184.6438,186.5784,186.6871,-2.0136,-1.0786,,1987953,202526787.371,, +2018-01-12,'399307,֤תծ,186.6871,187.1092,186.5642,187.0468,187.1066,-0.4195,-0.2242,,1912916,198756533.554,, +2018-01-11,'399307,֤תծ,187.1066,187.1693,185.9555,186.6534,186.6885,0.4181,0.224,,1552818,157602971.779,, +2018-01-10,'399307,֤תծ,186.6885,187.6209,186.0098,187.6209,187.6665,-0.978,-0.5211,,2281942,237491227.894,, +2018-01-09,'399307,֤תծ,187.6665,188.7916,187.4513,188.6223,188.7128,-1.0463,-0.5544,,2329277,241544331.246,, +2018-01-08,'399307,֤תծ,188.7128,189.301,188.5189,188.6883,188.3812,0.3316,0.176,,4794759,499285321.788,, +2018-01-05,'399307,֤תծ,188.3812,188.4574,186.6273,186.7681,186.7781,1.6031,0.8583,,4043650,414941980.873,, +2018-01-04,'399307,֤תծ,186.7781,186.8322,185.4452,185.9428,185.9346,0.8435,0.4537,,3981847,415930090.174,, +2018-01-03,'399307,֤תծ,185.9346,185.9703,183.979,184.3015,184.2812,1.6534,0.8972,,4454826,467581224.871,, +2018-01-02,'399307,֤תծ,184.2812,184.3297,182.459,182.459,182.419,1.8622,1.0208,,3357488,343087760.912,, +2017-12-29,'399307,֤תծ,182.419,182.6081,181.303,181.6081,181.5835,0.8355,0.4601,,804203,80953177.642,, +2017-12-28,'399307,֤תծ,181.5835,181.999,181.1708,181.535,181.361,0.2225,0.1227,,1052591,101324476.255,, +2017-12-27,'399307,֤תծ,181.361,182.9491,181.3286,182.9362,182.9364,-1.5754,-0.8612,,967863,97039049.559,, +2017-12-26,'399307,֤תծ,182.9364,183.4643,182.5305,183.4643,183.4452,-0.5088,-0.2774,,1370198,135991910.931,, +2017-12-25,'399307,֤תծ,183.4452,184.8033,183.0372,184.0713,184.1681,-0.7229,-0.3925,,2301596,238257706.412,, +2017-12-22,'399307,֤תծ,184.1681,184.5475,182.7753,183.3213,183.3195,0.8486,0.4629,,1401283,148928034.377,, +2017-12-21,'399307,֤תծ,183.3195,183.8403,182.073,182.2955,182.3286,0.9909,0.5435,,1398547,145466989.007,, +2017-12-20,'399307,֤תծ,182.3286,183.3667,182.2922,183.2464,183.2464,-0.9178,-0.5009,,1038127,105204221.528,, +2017-12-19,'399307,֤תծ,183.2464,183.2962,182.4319,182.6303,182.9217,0.3247,0.1775,,1803422,182066124.247,, +2017-12-18,'399307,֤תծ,182.9217,183.354,182.7484,183.2005,183.1854,-0.2637,-0.144,,709950,70043471.331,, +2017-12-15,'399307,֤תծ,183.1854,183.4581,182.7936,183.3887,183.3787,-0.1933,-0.1054,,642769,65496307.079,, +2017-12-14,'399307,֤תծ,183.3787,183.8493,182.9917,183.3566,183.3566,0.0221,0.0121,,725203,74254305.768,, +2017-12-13,'399307,֤תծ,183.3566,183.3968,181.8151,183.0391,183.0157,0.3409,0.1863,,687293,71636563.799,, +2017-12-12,'399307,֤תծ,183.0157,185.0665,183.0157,184.926,184.8442,-1.8285,-0.9892,,621293,63476696.009,, +2017-12-11,'399307,֤תծ,184.8442,185.5422,182.8905,183.7644,183.4224,1.4218,0.7752,,1640569,167509556.695,, +2017-12-08,'399307,֤תծ,183.4224,183.6297,180.1656,180.4585,180.4554,2.967,1.6442,,1632324,162893149.725,, +2017-12-07,'399307,֤תծ,180.4554,180.6496,178.9164,178.9164,179.0767,1.3787,0.7699,,1642718,163451652.0,, +2017-12-06,'399307,֤תծ,179.0767,179.712,178.5201,178.7665,179.1123,-0.0356,-0.0199,,1932515,193877088.957,, +2017-12-05,'399307,֤תծ,179.1123,180.2672,178.9631,179.9471,180.7936,-1.6813,-0.93,,1813967,182348223.278,, +2017-12-04,'399307,֤תծ,180.7936,182.6563,179.9448,182.6563,182.6487,-1.8551,-1.0157,,3089339,308851151.328,, +2017-12-01,'399307,֤תծ,182.6487,184.7895,182.5119,184.6056,184.7032,-2.0545,-1.1123,,2344284,238246864.328,, +2017-11-30,'399307,֤תծ,184.7032,185.5994,184.4977,185.0842,185.0772,-0.374,-0.2021,,1357721,145170617.937,, +2017-11-29,'399307,֤תծ,185.0772,186.4149,184.7866,185.8323,185.7724,-0.6952,-0.3742,,1466961,154494182.526,, +2017-11-28,'399307,֤תծ,185.7724,186.42,185.5774,185.964,185.9423,-0.1699,-0.0914,,813526,85116736.63,, +2017-11-27,'399307,֤תծ,185.9423,186.3885,185.6619,186.1193,186.1113,-0.169,-0.0908,,975793,103553828.664,, +2017-11-24,'399307,֤תծ,186.1113,187.887,186.0864,187.8691,187.7741,-1.6628,-0.8855,,2002041,211668835.561,, +2017-11-23,'399307,֤תծ,187.7741,189.0464,187.3595,188.9477,188.8408,-1.0667,-0.5649,,1411392,148890700.461,, +2017-11-22,'399307,֤תծ,188.8408,189.5919,188.6382,189.0477,188.9165,-0.0757,-0.0401,,1283650,137078498.434,, +2017-11-21,'399307,֤תծ,188.9165,190.1363,188.8688,189.6661,189.6757,-0.7592,-0.4003,,1678986,170710995.65,, +2017-11-20,'399307,֤תծ,189.6757,190.82,189.1841,190.82,190.8258,-1.1501,-0.6027,,1146806,123144057.252,, +2017-11-17,'399307,֤תծ,190.8258,192.8782,190.7884,192.4606,192.7285,-1.9027,-0.9872,,889668,94615244.222,, +2017-11-16,'399307,֤תծ,192.7285,193.1203,192.6658,193.1203,193.1226,-0.3941,-0.2041,,584144,64308561.39,, +2017-11-15,'399307,֤תծ,193.1226,193.9317,192.4867,193.9317,193.8158,-0.6932,-0.3577,,426574,47845969.844,, +2017-11-14,'399307,֤תծ,193.8158,194.8389,193.7657,194.8171,194.8171,-1.0013,-0.514,,415028,45803725.161,, +2017-11-13,'399307,֤תծ,194.8171,195.3027,194.3955,194.4801,194.4418,0.3753,0.193,,1251753,141246479.56,, +2017-11-10,'399307,֤תծ,194.4418,194.7637,194.2204,194.2777,194.2702,0.1716,0.0883,,573610,64180297.137,, +2017-11-09,'399307,֤תծ,194.2702,194.4484,193.8811,194.1022,194.1022,0.168,0.0866,,531037,59143652.355,, +2017-11-08,'399307,֤תծ,194.1022,194.1966,193.4916,193.8382,193.8198,0.2824,0.1457,,725433,79228961.597,, +2017-11-07,'399307,֤תծ,193.8198,194.0515,193.5217,193.8222,193.9651,-0.1453,-0.0749,,1149986,128756769.058,, +2017-11-06,'399307,֤תծ,193.9651,194.2736,193.6921,193.9256,194.0666,-0.1015,-0.0523,,672751,75250218.881,, +2017-11-03,'399307,֤תծ,194.0666,194.7646,193.5364,194.7646,194.983,-0.9164,-0.47,,2513796,288970929.848,, +2017-11-02,'399307,֤תծ,194.983,196.1981,194.8644,196.1305,196.0956,-1.1126,-0.5674,,1480300,170582360.505,, +2017-11-01,'399307,֤תծ,196.0956,196.2696,194.4705,194.4751,194.4544,1.6412,0.844,,2928222,339477416.107,, +2017-10-31,'399307,֤תծ,194.4544,195.1445,194.234,195.0509,195.0583,-0.6039,-0.3096,,637604,67375916.378,, +2017-10-30,'399307,֤תծ,195.0583,196.8716,194.9502,196.8716,196.848,-1.7897,-0.9092,,269127,28574013.526,, +2017-10-27,'399307,֤תծ,196.848,197.3007,196.4108,197.1124,197.0918,-0.2438,-0.1237,,432295,45837536.886,, +2017-10-26,'399307,֤תծ,197.0918,197.5322,197.0087,197.4741,197.4146,-0.3228,-0.1635,,641858,69110515.569,, +2017-10-25,'399307,֤תծ,197.4146,197.6105,197.1918,197.2291,197.2053,0.2093,0.1061,,529790,58552804.977,, +2017-10-24,'399307,֤תծ,197.2053,197.4299,196.8764,197.3887,197.384,-0.1787,-0.0905,,252493,26860165.851,, +2017-10-23,'399307,֤תծ,197.384,197.7873,197.108,197.7676,197.4331,-0.0491,-0.0249,,489657,51499900.215,, +2017-10-20,'399307,֤תծ,197.4331,197.6765,196.6798,197.0239,196.886,0.5471,0.2779,,829445,86971077.307,, +2017-10-19,'399307,֤תծ,196.886,198.1497,195.6951,198.1497,198.1329,-1.2469,-0.6293,,384003,42021812.26,, +2017-10-18,'399307,֤תծ,198.1329,198.7501,198.0478,198.5271,198.5021,-0.3692,-0.186,,446578,49049812.893,, +2017-10-17,'399307,֤תծ,198.5021,198.7814,198.333,198.491,198.476,0.0261,0.0132,,345184,38358066.675,, +2017-10-16,'399307,֤תծ,198.476,199.6285,198.3576,199.2019,199.2686,-0.7926,-0.3978,,412829,44145107.288,, +2017-10-13,'399307,֤תծ,199.2686,199.5075,198.9616,199.0689,199.0453,0.2233,0.1122,,426172,47525002.1,, +2017-10-12,'399307,֤תծ,199.0453,199.4587,198.8065,199.324,199.4202,-0.3749,-0.188,,399572,43307920.255,, +2017-10-11,'399307,֤תծ,199.4202,199.6403,198.6189,198.6189,198.6215,0.7987,0.4021,,568523,62270682.361,, +2017-10-10,'399307,֤תծ,198.6215,198.6215,197.4463,197.8029,197.8047,0.8168,0.4129,,515153,55802633.142,, +2017-10-09,'399307,֤תծ,197.8047,198.6584,197.677,198.1312,197.9268,-0.1221,-0.0617,,452564,48561091.44,, +2017-09-29,'399307,֤תծ,197.9268,197.9562,196.8662,196.985,196.9664,0.9604,0.4876,,229054,25023081.358,, +2017-09-28,'399307,֤תծ,196.9664,197.1551,196.6181,196.9082,196.8558,0.1106,0.0562,,385647,40973261.069,, +2017-09-27,'399307,֤תծ,196.8558,197.364,196.4153,196.968,196.8885,-0.0327,-0.0166,,674543,73584006.272,, +2017-09-26,'399307,֤תծ,196.8885,198.0685,196.5544,198.0316,197.9834,-1.0949,-0.553,,601588,65218800.83,, +2017-09-25,'399307,֤תծ,197.9834,199.6325,197.6785,199.6325,199.6774,-1.694,-0.8484,,371241,40682138.703,, +2017-09-22,'399307,֤תծ,199.6774,201.1514,199.3504,200.9701,201.0505,-1.3731,-0.683,,473553,52689436.893,, +2017-09-21,'399307,֤תծ,201.0505,202.1389,200.8775,201.9862,201.9538,-0.9033,-0.4473,,255286,28435231.113,, +2017-09-20,'399307,֤תծ,201.9538,202.2584,201.5261,201.9431,201.7744,0.1794,0.0889,,291744,31820200.727,, +2017-09-19,'399307,֤תծ,201.7744,202.7462,201.4291,202.5245,202.4904,-0.716,-0.3536,,328921,36523173.342,, +2017-09-18,'399307,֤תծ,202.4904,203.0931,202.0197,203.0931,203.0637,-0.5733,-0.2823,,249853,28244939.438,, +2017-09-15,'399307,֤תծ,203.0637,203.3213,202.4721,203.3138,203.1598,-0.0961,-0.0473,,697540,80872121.634,, +2017-09-14,'399307,֤תծ,203.1598,203.9284,202.9733,203.9284,203.8695,-0.7097,-0.3481,,319060,35685520.848,, +2017-09-13,'399307,֤תծ,203.8695,204.6862,203.6815,204.5275,204.4715,-0.602,-0.2944,,485717,54417723.481,, +2017-09-12,'399307,֤תծ,204.4715,205.3864,204.258,205.1897,205.1623,-0.6908,-0.3367,,1179077,137850178.38,, +2017-09-11,'399307,֤תծ,205.1623,206.0758,204.9517,206.0758,206.1668,-1.0045,-0.4872,,716312,80477620.108,, +2017-09-08,'399307,֤תծ,206.1668,206.5037,205.7393,205.8079,205.8108,0.356,0.173,,547616,61474813.466,, +2017-09-07,'399307,֤תծ,205.8108,206.4939,205.6129,205.8686,205.8049,0.0059,0.0029,,1105193,122670900.551,, +2017-09-06,'399307,֤תծ,205.8049,205.8594,204.8976,205.4043,205.3298,0.4751,0.2314,,790738,89374488.931,, +2017-09-05,'399307,֤תծ,205.3298,205.4801,204.7489,205.3272,205.3453,-0.0155,-0.0075,,1936201,219042263.837,, +2017-09-04,'399307,֤תծ,205.3453,205.6465,204.5574,204.8388,204.8185,0.5268,0.2572,,907583,102823117.967,, +2017-09-01,'399307,֤תծ,204.8185,204.8563,204.0614,204.2598,204.3056,0.5129,0.251,,1277490,148786024.261,, +2017-08-31,'399307,֤תծ,204.3056,204.5818,203.7691,204.3262,204.2979,0.0077,0.0038,,441452,50465606.872,, +2017-08-30,'399307,֤תծ,204.2979,204.391,203.3523,204.0438,204.0732,0.2247,0.1101,,1030442,119991763.55,, +2017-08-29,'399307,֤תծ,204.0732,204.837,203.6995,204.4743,204.5964,-0.5232,-0.2557,,483686,55905728.643,, +2017-08-28,'399307,֤תծ,204.5964,204.9635,203.2321,203.5788,203.5794,1.017,0.4996,,1546569,174912194.732,, +2017-08-25,'399307,֤תծ,203.5794,203.6505,202.3798,202.5232,202.5235,1.0559,0.5214,,1153649,130390565.252,, +2017-08-24,'399307,֤תծ,202.5235,203.2343,202.3866,203.0591,203.0414,-0.5179,-0.2551,,442037,50223137.902,, +2017-08-23,'399307,֤תծ,203.0414,203.3267,202.9356,203.0488,203.0373,0.0041,0.002,,516347,59089255.491,, +2017-08-22,'399307,֤תծ,203.0373,203.9011,202.9324,203.9011,203.9011,-0.8638,-0.4236,,359394,40470941.276,, +2017-08-21,'399307,֤תծ,203.9011,204.2402,203.4855,204.0508,204.0281,-0.127,-0.0622,,1501438,174603824.134,, +2017-08-18,'399307,֤תծ,204.0281,204.3619,203.6142,204.1707,204.2438,-0.2157,-0.1056,,1334568,153766132.416,, +2017-08-17,'399307,֤תծ,204.2438,204.3258,202.8038,203.1757,203.1851,1.0587,0.5211,,1470584,170680595.797,, +2017-08-16,'399307,֤תծ,203.1851,203.7198,202.1224,202.9209,202.7591,0.426,0.2101,,1754382,202976026.148,, +2017-08-15,'399307,֤תծ,202.7591,203.1926,202.2617,202.7136,202.5258,0.2333,0.1152,,898862,103283607.766,, +2017-08-14,'399307,֤תծ,202.5258,202.7392,200.9649,201.2323,200.8201,1.7057,0.8494,,537431,60925203.857,, +2017-08-11,'399307,֤תծ,200.8201,202.3237,200.7679,202.3237,202.3266,-1.5065,-0.7446,,701377,77478596.155,, +2017-08-10,'399307,֤תծ,202.3266,203.2896,201.6951,203.1744,202.9801,-0.6535,-0.322,,334874,36737138.843,, +2017-08-09,'399307,֤תծ,202.9801,204.4843,202.9235,204.0053,203.9222,-0.9421,-0.462,,548154,63346284.906,, +2017-08-08,'399307,֤תծ,203.9222,204.7321,203.8431,204.2993,204.3973,-0.4751,-0.2324,,558234,63694096.681,, +2017-08-07,'399307,֤תծ,204.3973,205.1189,204.0083,204.8617,204.917,-0.5197,-0.2536,,639053,73549829.561,, +2017-08-04,'399307,֤תծ,204.917,205.8109,204.9113,205.587,205.4269,-0.5099,-0.2482,,1005161,121008687.428,, +2017-08-03,'399307,֤תծ,205.4269,205.6352,204.6622,204.9359,204.9621,0.4648,0.2268,,1528982,179536717.998,, +2017-08-02,'399307,֤תծ,204.9621,205.5459,204.8233,205.1246,205.1858,-0.2237,-0.109,,2391928,299103683.688,, +2017-08-01,'399307,֤תծ,205.1858,205.9854,204.8122,205.8147,205.7416,-0.5558,-0.2701,,1525032,187892946.65,, +2017-07-31,'399307,֤תծ,205.7416,205.8024,203.3221,203.3237,203.3393,2.4023,1.1814,,3409487,420610041.708,, +2017-07-28,'399307,֤תծ,203.3393,203.3517,201.2709,201.5986,201.5983,1.741,0.8636,,2533746,309286760.73,, +2017-07-27,'399307,֤תծ,201.5983,201.6278,199.8629,200.1935,200.1935,1.4048,0.7017,,1909918,219115394.843,, +2017-07-26,'399307,֤תծ,200.1935,200.6794,199.853,200.1199,199.9029,0.2906,0.1454,,1003926,117187664.666,, +2017-07-25,'399307,֤תծ,199.9029,201.3102,199.9029,200.9555,200.9555,-1.0526,-0.5238,,863807,97631023.649,, +2017-07-24,'399307,֤תծ,200.9555,201.0173,200.1246,200.3836,200.3024,0.6531,0.3261,,928483,101195713.532,, +2017-07-21,'399307,֤תծ,200.3024,200.4891,199.1696,199.3778,199.341,0.9614,0.4823,,1429690,154955519.126,, +2017-07-20,'399307,֤תծ,199.341,199.6499,198.6914,198.7907,198.748,0.593,0.2984,,1295899,147266762.474,, +2017-07-19,'399307,֤תծ,198.748,198.748,196.7975,197.2297,197.282,1.466,0.7431,,2212375,252251780.573,, +2017-07-18,'399307,֤תծ,197.282,198.1164,196.2744,197.9696,198.3203,-1.0383,-0.5235,,1290784,149335448.878,, +2017-07-17,'399307,֤תծ,198.3203,200.9211,198.1336,200.9211,200.9102,-2.5899,-1.2891,,1019140,111079477.59,, +2017-07-14,'399307,֤תծ,200.9102,201.0752,200.3993,200.7401,200.7239,0.1863,0.0928,,443993,52903621.369,, +2017-07-13,'399307,֤תծ,200.7239,201.0468,200.0184,200.0184,199.8802,0.8437,0.4221,,1185935,139021127.41,, +2017-07-12,'399307,֤תծ,199.8802,201.4579,199.5669,201.3455,201.3455,-1.4653,-0.7278,,601235,72175161.232,, +2017-07-11,'399307,֤תծ,201.3455,202.373,201.3455,202.2128,202.0835,-0.738,-0.3652,,500563,58204934.741,, +2017-07-10,'399307,֤תծ,202.0835,203.4269,201.834,202.0886,202.0886,-0.0051,-0.0025,,2073726,266371592.323,, +2017-07-07,'399307,֤תծ,202.0886,202.2563,201.3981,201.9163,201.7672,0.3214,0.1593,,833694,98934996.929,, +2017-07-06,'399307,֤תծ,201.7672,202.3211,201.2321,201.6956,201.6188,0.1484,0.0736,,1272851,145856215.179,, +2017-07-05,'399307,֤תծ,201.6188,201.6188,200.239,200.3901,200.3449,1.2739,0.6359,,1926938,221668140.865,, +2017-07-04,'399307,֤תծ,200.3449,200.7803,199.9821,200.5104,200.41,-0.0651,-0.0325,,715195,78522663.539,, +2017-07-03,'399307,֤תծ,200.41,200.7674,198.7352,198.7729,198.772,1.638,0.8241,,562002,62368265.985,, +2017-06-30,'399307,֤תծ,198.772,199.6614,198.0852,199.6614,199.6614,-0.8894,-0.4455,,792752,89343675.851,, +2017-06-29,'399307,֤תծ,199.6614,202.7856,198.6517,199.7889,199.7063,-0.0449,-0.0225,,1053672,123916265.91,, +2017-06-28,'399307,֤תծ,199.7063,202.2018,199.4356,202.0382,202.2982,-2.5919,-1.2812,,1140406,136699115.75,, +2017-06-27,'399307,֤תծ,202.2982,204.6657,201.3955,203.8032,203.3784,-1.0802,-0.5311,,1931451,249102799.391,, +2017-06-26,'399307,֤תծ,203.3784,204.0947,199.8853,199.8972,200.0418,3.3366,1.668,,3662564,501837434.643,, +2017-06-23,'399307,֤תծ,200.0418,200.2606,198.005,199.589,199.7814,0.2604,0.1303,,2446431,323456562.134,, +2017-06-22,'399307,֤תծ,199.7814,202.6447,199.2757,202.0015,201.4,-1.6186,-0.8037,,3827176,529012333.36,, +2017-06-21,'399307,֤תծ,201.4,201.4,199.6655,201.0533,200.4082,0.9918,0.4949,,3672960,500797398.621,, +2017-06-20,'399307,֤תծ,200.4082,200.8765,198.973,199.0423,198.4898,1.9184,0.9665,,4039363,533147760.08,, +2017-06-19,'399307,֤תծ,198.4898,198.5179,195.5982,195.7967,196.0346,2.4552,1.2524,,1935004,250044324.861,, +2017-06-16,'399307,֤תծ,196.0346,197.7456,195.6143,196.7756,197.2078,-1.1732,-0.5949,,709207,91788987.381,, +2017-06-15,'399307,֤תծ,197.2078,197.6794,194.7986,194.8527,195.1195,2.0883,1.0703,,763681,84670143.586,, +2017-06-14,'399307,֤תծ,195.1195,196.2949,194.737,196.074,196.1262,-1.0067,-0.5133,,540448,61843400.77,, +2017-06-13,'399307,֤תծ,196.1262,196.5393,194.7391,196.0991,196.0627,0.0635,0.0324,,1056863,135137784.0,, +2017-06-12,'399307,֤תծ,196.0627,197.6214,195.499,197.0712,196.8879,-0.8252,-0.4191,,975457,118722400.352,, +2017-06-09,'399307,֤תծ,196.8879,202.0101,194.3619,195.0819,195.1479,1.74,0.8916,,812634,91280685.833,, +2017-06-08,'399307,֤תծ,195.1479,196.9697,194.495,195.6706,195.4989,-0.351,-0.1795,,1281874,166127911.21,, +2017-06-07,'399307,֤תծ,195.4989,195.9413,191.0182,191.0965,190.8597,4.6392,2.4307,,3219252,392738923.834,, +2017-06-06,'399307,֤תծ,190.8597,191.0932,188.93,189.3347,188.6486,2.2111,1.1721,,1719802,213064355.223,, +2017-06-05,'399307,֤תծ,188.6486,190.0988,186.4443,186.5951,186.5964,2.0522,1.0998,,1944536,236867418.688,, +2017-06-02,'399307,֤תծ,186.5964,187.2298,185.5506,187.1924,186.7592,-0.1628,-0.0872,,1171284,144261318.46,, +2017-06-01,'399307,֤תծ,186.7592,187.4143,186.147,186.8707,186.5023,0.2569,0.1377,,1340236,165057659.551,, +2017-05-31,'399307,֤תծ,186.5023,188.0193,186.1485,187.583,188.1442,-1.6419,-0.8727,,1453116,168735091.356,, +2017-05-26,'399307,֤תծ,188.1442,189.6527,186.7236,189.3941,189.3364,-1.1922,-0.6297,,852800,98790807.236,, +2017-05-25,'399307,֤תծ,189.3364,189.7195,187.7173,189.52,188.638,0.6984,0.3702,,1101170,138292784.329,, +2017-05-24,'399307,֤תծ,188.638,189.281,187.342,189.1579,189.2055,-0.5675,-0.2999,,1071732,128283712.404,, +2017-05-23,'399307,֤תծ,189.2055,190.5647,189.0827,190.013,189.9683,-0.7628,-0.4015,,2352878,302970765.044,, +2017-05-22,'399307,֤תծ,189.9683,191.4668,189.6724,191.1553,191.1399,-1.1716,-0.613,,802437,98973570.792,, +2017-05-19,'399307,֤תծ,191.1399,191.4036,190.6434,190.9052,190.889,0.2509,0.1314,,1548230,185346054.338,, +2017-05-18,'399307,֤תծ,190.889,192.9212,190.5262,192.5132,191.8303,-0.9413,-0.4907,,2084808,236921771.71,, +2017-05-17,'399307,֤תծ,191.8303,193.7165,191.106,192.4277,192.3285,-0.4982,-0.259,,1453697,192789006.845,, +2017-05-16,'399307,֤תծ,192.3285,192.378,189.3182,189.9072,189.8638,2.4647,1.2981,,5178360,702455184.516,, +2017-05-15,'399307,֤תծ,189.8638,190.4104,187.2676,187.9112,187.8391,2.0247,1.0779,,2856185,369643453.394,, +2017-05-12,'399307,֤תծ,187.8391,188.8857,187.3323,188.2752,187.7171,0.122,0.065,,717455,83550236.134,, +2017-05-11,'399307,֤תծ,187.7171,188.9465,187.0193,188.9299,188.6917,-0.9746,-0.5165,,1020792,118963751.205,, +2017-05-10,'399307,֤תծ,188.6917,189.7158,188.3858,189.0729,188.3577,0.334,0.1773,,2033771,259170243.563,, +2017-05-09,'399307,֤תծ,188.3577,188.864,187.2592,188.2115,188.1185,0.2392,0.1272,,1209843,131785080.944,, +2017-05-08,'399307,֤תծ,188.1185,190.0058,187.1899,190.0058,189.6518,-1.5333,-0.8085,,678719,75110937.118,, +2017-05-05,'399307,֤תծ,189.6518,190.9246,189.5573,190.0829,190.1811,-0.5293,-0.2783,,941990,113397297.674,, +2017-05-04,'399307,֤תծ,190.1811,191.9428,189.2853,190.0723,189.587,0.5941,0.3134,,837627,98736347.394,, +2017-05-03,'399307,֤תծ,189.587,191.9567,189.4777,191.9567,191.8634,-2.2764,-1.1865,,823765,97636238.931,, +2017-05-02,'399307,֤תծ,191.8634,192.2549,191.4115,191.8446,191.731,0.1324,0.0691,,1204421,149918599.795,, +2017-04-28,'399307,֤תծ,191.731,192.9502,190.121,190.3875,189.9243,1.8067,0.9513,,2461203,286754130.541,, +2017-04-27,'399307,֤תծ,189.9243,190.2864,188.8995,190.2864,190.1387,-0.2144,-0.1128,,1400344,165801278.232,, +2017-04-26,'399307,֤תծ,190.1387,191.2661,188.5338,188.5338,188.5808,1.5579,0.8261,,3020936,396681378.843,, +2017-04-25,'399307,֤תծ,188.5808,189.2225,187.2335,187.3206,187.0367,1.5441,0.8256,,1467791,180041580.497,, +2017-04-24,'399307,֤תծ,187.0367,189.1178,187.0367,189.0749,189.0866,-2.0499,-1.0841,,821886,97707048.441,, +2017-04-21,'399307,֤תծ,189.0866,189.2938,188.4255,189.1948,189.0274,0.0592,0.0313,,170185,18692876.713,, +2017-04-20,'399307,֤תծ,189.0274,189.2528,188.026,188.026,187.958,1.0694,0.569,,515403,62641643.518,, +2017-04-19,'399307,֤תծ,187.958,188.4771,187.4726,188.2794,188.2887,-0.3307,-0.1756,,631205,68920761.227,, +2017-04-18,'399307,֤תծ,188.2887,188.8921,188.0013,188.2562,188.2532,0.0355,0.0189,,621372,69498010.9,, +2017-04-17,'399307,֤תծ,188.2532,190.2978,188.1174,190.2978,190.2978,-2.0446,-1.0744,,480886,52727017.571,, +2017-04-14,'399307,֤תծ,190.2978,192.0135,190.2477,191.366,191.3426,-1.0448,-0.546,,213768,23437792.368,, +2017-04-13,'399307,֤תծ,191.3426,191.4602,190.9122,191.1322,191.0821,0.2605,0.1363,,521543,56905679.733,, +2017-04-12,'399307,֤תծ,191.0821,191.6481,190.8261,191.3171,191.2217,-0.1396,-0.073,,710431,81202370.589,, +2017-04-11,'399307,֤תծ,191.2217,191.2804,190.3001,191.2523,191.2525,-0.0308,-0.0161,,744402,90920556.167,, +2017-04-10,'399307,֤תծ,191.2525,191.7625,190.9629,191.6938,191.5793,-0.3268,-0.1706,,829017,100098611.156,, +2017-04-07,'399307,֤תծ,191.5793,191.7186,190.9586,191.4415,191.4176,0.1617,0.0845,,636097,77963698.974,, +2017-04-06,'399307,֤תծ,191.4176,192.2747,190.5474,192.0316,191.9454,-0.5278,-0.275,,1390998,169173975.052,, +2017-04-05,'399307,֤תծ,191.9454,192.5606,191.1645,191.7391,191.5117,0.4337,0.2265,,632579,75716281.335,, +2017-03-31,'399307,֤תծ,191.5117,194.783,191.1301,191.7911,191.9043,-0.3926,-0.2046,,817640,98704677.665,, +2017-03-30,'399307,֤תծ,191.9043,192.2893,191.7106,192.2893,192.2922,-0.3879,-0.2017,,272804,33393851.291,, +2017-03-29,'399307,֤תծ,192.2922,193.0666,191.8971,192.787,192.82,-0.5278,-0.2737,,455545,52723415.932,, +2017-03-28,'399307,֤תծ,192.82,193.0389,192.5303,192.9227,192.9251,-0.1051,-0.0545,,346424,40756785.361,, +2017-03-27,'399307,֤תծ,192.9251,193.8849,192.7001,193.7557,193.7325,-0.8074,-0.4168,,482195,57469349.534,, +2017-03-24,'399307,֤תծ,193.7325,194.1919,192.3496,192.4734,192.3126,1.4199,0.7383,,2014156,256729025.619,, +2017-03-23,'399307,֤תծ,192.3126,192.7106,191.8303,192.2204,192.1306,0.182,0.0947,,720733,88524410.909,, +2017-03-22,'399307,֤תծ,192.1306,192.8484,191.4317,192.5262,192.1675,-0.0369,-0.0192,,2214882,273617489.481,, +2017-03-21,'399307,֤תծ,192.1675,192.2058,191.4609,192.0933,191.9207,0.2468,0.1286,,1482258,182166165.222,, +2017-03-20,'399307,֤תծ,191.9207,193.0153,191.6056,192.8036,192.5174,-0.5967,-0.3099,,554269,64853266.141,, +2017-03-17,'399307,֤תծ,192.5174,193.35,192.2982,192.9856,192.9856,-0.4682,-0.2426,,506941,61040911.91,, +2017-03-16,'399307,֤תծ,192.9856,193.5796,192.6658,193.2478,193.248,-0.2624,-0.1358,,431746,51801815.67,, +2017-03-15,'399307,֤תծ,193.248,193.7782,193.2261,193.6977,193.6478,-0.3998,-0.2065,,585033,71134007.991,, +2017-03-14,'399307,֤תծ,193.6478,193.9448,193.4296,193.9289,193.9313,-0.2835,-0.1462,,497863,61293119.35,, +2017-03-13,'399307,֤תծ,193.9313,194.4694,193.1714,193.8768,193.8768,0.0545,0.0281,,834387,103294306.505,, +2017-03-10,'399307,֤תծ,193.8768,194.1418,193.5492,194.068,193.9664,-0.0896,-0.0462,,337254,39691873.115,, +2017-03-09,'399307,֤תծ,193.9664,194.675,193.8167,194.375,194.3902,-0.4238,-0.218,,398779,47623841.548,, +2017-03-08,'399307,֤תծ,194.3902,195.5558,193.8428,195.0619,195.0619,-0.6717,-0.3444,,714892,81205044.781,, +2017-03-07,'399307,֤תծ,195.0619,195.5094,194.5753,195.1984,195.1984,-0.1365,-0.0699,,611591,74054888.609,, +2017-03-06,'399307,֤תծ,195.1984,195.4696,194.2337,194.8538,194.8538,0.3446,0.1769,,610982,76207011.416,, +2017-03-03,'399307,֤תծ,194.8538,195.0417,193.3201,193.5895,193.5895,1.2643,0.6531,,798093,98543626.379,, +2017-03-02,'399307,֤תծ,193.5895,193.8523,193.2093,193.4228,193.4228,0.1667,0.0862,,297434,35568247.663,, +2017-03-01,'399307,֤תծ,193.4228,193.7787,193.2651,193.4872,193.4872,-0.0644,-0.0333,,466850,53695857.68,, +2017-02-28,'399307,֤תծ,193.4872,193.967,193.4094,193.5048,193.5162,-0.029,-0.015,,280893,31089267.181,, +2017-02-27,'399307,֤תծ,193.5162,194.4817,193.2274,194.4729,194.4613,-0.9451,-0.486,,161891,18453608.376,, +2017-02-24,'399307,֤תծ,194.4613,194.4613,193.2597,193.776,193.9282,0.5331,0.2749,,540411,63127168.122,, +2017-02-23,'399307,֤תծ,193.9282,194.4568,193.5081,194.4544,194.4544,-0.5262,-0.2706,,368072,42632244.713,, +2017-02-22,'399307,֤תծ,194.4544,194.4544,193.1451,193.3965,193.3965,1.0579,0.547,,524464,59840858.824,, +2017-02-21,'399307,֤תծ,193.3965,193.5527,193.0725,193.1552,193.1552,0.2413,0.1249,,553998,63301191.356,, +2017-02-20,'399307,֤תծ,193.1552,193.1552,192.4604,192.7398,192.7398,0.4154,0.2155,,470148,56063814.463,, +2017-02-17,'399307,֤תծ,192.7398,193.0623,192.3061,192.9578,192.9578,-0.218,-0.113,,210076,23008166.879,, +2017-02-16,'399307,֤תծ,192.9578,193.4574,192.8276,193.2757,193.2757,-0.3179,-0.1645,,522642,61802374.203,, +2017-02-15,'399307,֤תծ,193.2757,193.7033,193.1145,193.2008,193.1552,0.1205,0.0624,,613524,73116497.946,, +2017-02-14,'399307,֤תծ,193.1552,193.3777,192.8412,192.9081,192.8991,0.2561,0.1328,,189603,22285465.741,, +2017-02-13,'399307,֤תծ,192.8991,193.5098,192.7986,192.9478,192.8561,0.043,0.0223,,267363,30230986.355,, +2017-02-10,'399307,֤תծ,192.8561,193.0315,192.1489,192.3353,192.3131,0.543,0.2824,,751139,87289364.927,, +2017-02-09,'399307,֤תծ,192.3131,192.5737,192.1315,192.1534,192.1481,0.165,0.0859,,400117,46960859.714,, +2017-02-08,'399307,֤תծ,192.1481,192.3876,191.5776,192.3876,191.7546,0.3935,0.2052,,407208,46981479.284,, +2017-02-07,'399307,֤תծ,191.7546,192.4609,191.6037,192.4609,192.2269,-0.4723,-0.2457,,310910,35809459.691,, +2017-02-06,'399307,֤תծ,192.2269,192.2269,190.938,191.6682,191.6508,0.5761,0.3006,,458228,52858955.397,, +2017-02-03,'399307,֤תծ,191.6508,192.3295,191.3468,192.0593,192.1215,-0.4707,-0.245,,363029,39109947.529,, diff --git a/trade_process/efund_mail2.py b/trade_process/efund_mail2.py new file mode 100644 index 0000000..41c2cd6 --- /dev/null +++ b/trade_process/efund_mail2.py @@ -0,0 +1,636 @@ +#!/usr/bin/python2.7 +# -*- coding: utf-8 -*- +# from url_info import * +# from spider import * +#import itchat +#from sleep import * +# import datetime +# import one_predict +import json,time +import sched + +import datetime +import re +# import sys +import urllib2 +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +from email.utils import formataddr +from email.mime.application import MIMEApplication +from fund_zf import main_zf +from strategy.macd_back_test import macdmain,mainStock +# from numpy import mean, ptp, var, std + +import requests +from bs4 import BeautifulSoup + + +def spider(url): + r = requests.get(url) + page = r.text + soup = BeautifulSoup(page, 'html.parser') + value = soup.find_all(id='gz_gszzl') + value = value[0].get_text().replace('%','') + value=value.encode('utf-8') + value1 = soup.find_all(id='gz_gsz') + value1 = value1[0].get_text().encode('utf-8') + try: + return [float(value1),float(value1),float(value)] + except ValueError as e: + return +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + +# 获取某一基金在某一日的累计净值数据 +def get_jingzhi(strfundcode, strdate,stredate): + try: + url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=' + str(strfundcode) + '&page=1&per=1000&sdate=' + str(strdate) + '&edate=' + str(stredate) + print u'数据链接:'+url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + return '-1' + + json_fund_value = response.read().decode('utf-8') + # print json_fund_value + + tr_re = re.compile(r'(.*?)') + item_re = re.compile( + r'''(\d{4}-\d{2}-\d{2})(.*?)(.*?)(.*?)(.*?)(.*?)''', + re.X) + + # 获取不到 返回0 + jingzhi ='-1' + result=[] + + for line in tr_re.findall(json_fund_value): + # print line + '\n' + match = item_re.match(line) + if match: + entry = match.groups() + entry[3].rstrip('%') + date = datetime.datetime.strptime(entry[0], '%Y-%m-%d') + # jingzhi = entry[2] + if entry[3]!='' and entry[2]!='': + result.append([date, float(entry[1]),float(entry[2]), float(entry[3].rstrip('%'))]) + else: + result.append([date, float(entry[1]), float(0), 0]) + jingzhi1 = entry[1] + jingzhi2 = entry[2] + # print jingzhi2 + + if jingzhi2.strip() == '': + # 040028 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-01-06 1.4414 暂停申购 暂停赎回 + # 2017-01-05 1.4369 暂停申购 暂停赎回 + jingzhi = '-1' + elif jingzhi2.find('%') > -1: + # 040003 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-03-27 1.1149 3.9450% 限制大额申购 开放赎回 + # 2017-03-26* 2.2240 3.8970% 限制大额申购 开放赎回 + jingzhi = '-1' + elif float(jingzhi1) > float(jingzhi2): + # 502015 + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-27 0.6980 0.3785 -2.24% 场内买入 场内卖出 + # 2017-03-24 0.7140 0.3945 5.15% 场内买入 场内卖出 + jingzhi = entry[1] + else: + # + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-28 1.7720 1.7720 -0.23% 开放申购 开放赎回 + # 2017-03-27 1.7761 1.7761 -0.43% 开放申购 开放赎回 + jingzhi = entry[2] + return result + +#获取历史数据 +def get_histrydata(strfundcode,numdays): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print u'结束时间:' + strtoday + + # 昨天 + yestodaytime = tdatetime - datetime.timedelta(days=1) + yestoday = datetime.datetime.strftime(yestodaytime, '%Y-%m-%d') + + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=numdays) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print u'开始时间:' + strsdate + + # 1.1 起始时间 + strsdate = strsdate # sys.argv[1] + stredate = yestoday # sys.argv[2] + + # 今日零时 + # strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + # tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + # print tdatetime + + # 开始时间 如果是周六 周日 调整到周五 + # print strsdate + sdatetime = datetime.datetime.strptime(strsdate, '%Y-%m-%d') + sdatetime.isoweekday() + if sdatetime.isoweekday() == 7: + sdatetime = sdatetime + datetime.timedelta(days=-2) + elif sdatetime.isoweekday() == 6: + sdatetime = sdatetime + datetime.timedelta(days=-1) + + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + + # 结束时间 如果是周六 周日 调整到周五 + # print stredate + edatetime = datetime.datetime.strptime(stredate, '%Y-%m-%d') + edatetime.isoweekday() + if edatetime.isoweekday() == 7: + edatetime = edatetime + datetime.timedelta(days=-2) + elif edatetime.isoweekday() == 6: + edatetime = edatetime + datetime.timedelta(days=-1) + + stredate = datetime.datetime.strftime(edatetime, '%Y-%m-%d') + # print stredate + + # 判断时间段 今日净值要下午才出 一律不处理 + if edatetime <= sdatetime or tdatetime <= sdatetime or tdatetime <= edatetime: + print '判断时间段 今日净值要下午才出 一律不处理' + print 'date input error!\n' + + jingzhimin = get_jingzhi(strfundcode[0], strsdate, stredate) + if not(tdatetime.isoweekday() == 7 or tdatetime.isoweekday() == 6): + url = 'http://fund.eastmoney.com/%s.html' % strfundcode[0] + todayvalue = spider(url) + if todayvalue != None: + jingzhimin.insert(0, [tdatetime, todayvalue[0], todayvalue[1], todayvalue[2]]) + return jingzhimin + +#计算交易策略 +def fenxi(strfundcode,jingzhimin,method): + #获取历史数据 + # jingzhimin=get_histrydata(strfundcode,numdays) + years = [x[0] for x in jingzhimin] + price = [x[1] for x in jingzhimin] + changeprice = [x[3]/x[1] for x in jingzhimin] + price_stre = [((x[1] - (sum(price)/len(price)))/(max(price)-min(price)))*(max(changeprice)-min(changeprice)) for x in jingzhimin] + # plt.plot(years, changeprice, 'g',label='change') + starty = [0 for x in jingzhimin] + jizhipoints=jizhi(jingzhimin) + celue_point=celue(jingzhimin,jizhipoints,method) + # change_fenxi(change5days) + return celue_point + +def stdDeviation(a): + l = len(a) + m = sum(a) / l + d = 0 + for i in a: d += (i - m) ** 2 + return (d * (1 / l)) ** 0.5 + +#统计 +# def caculate(data): +# # 极差 +# ptp(data) +# # 方差 +# var(data) +# # 标准差 +# std(data) +# # 变异系数 +# mean(data) / std(data) +# norm.ppf(0.05, mean(data), std(data)) + +#求极值 +def jizhi(funddata): + jizhipoints={} + alldata = [x[1] for x in funddata[::-2]] + jizhipoints['allmax']= [alldata.index(max(alldata)),max(alldata)] + jizhipoints['allmin']= [alldata.index(min(alldata)),min(alldata)] + data30days = [x[1] for x in funddata[:-30:-2]] + jizhipoints['30daysmax'] = [data30days.index(max(data30days)),max(data30days)] + jizhipoints['30daysmin'] = [data30days.index(min(data30days)),min(data30days)] + data180days = [x[1] for x in funddata[:-180:-2]] + jizhipoints['180daysmax'] = [data180days.index(max(data180days)), max(data180days)] + jizhipoints['180daysmin'] = [data180days.index(min(data180days)), min(data180days)] + data5days = [x[1] for x in funddata[:-5:-2]] + jizhipoints['5daysmax'] = [data5days.index(max(data5days)), max(data5days)] + jizhipoints['5daysmin'] = [data5days.index(min(data5days)), min(data5days)] + return jizhipoints + +#交易策略监测 +def celue(funddata,jizhipoints,method): + todaydata = funddata[0] + data5days = [x[1] for x in funddata[:5:1]] + change = [x[3] for x in funddata[:5:1]] + change7 = [x[3] for x in funddata[:7:1]] + change12days= [x[3] for x in funddata[:90:1]] + if stdDeviation(change12days)<0.3: + r=1.005;rmax=1.002 + elif stdDeviation(change12days) > 0.6: + r = 1.009;rmax = 1.002 + else: + r = 1.005;rmax = 1.002 + buy_points = [] + sell_point = [] + + #根据净值比较 + if(todaydata[1]<=r*jizhipoints['allmin'][1])and(sum(change)<-1.1): + buy_points.append({'估值接近1年最小净值':str(todaydata[1])+str('<=')+str(r*jizhipoints['allmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['180daysmin'][1])and(sum(change)<-1.1): + buy_points.append({'估值接近180天最小净值': str(todaydata[1])+str('<=')+str(r*jizhipoints['180daysmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['30daysmin'][1])and(sum(change)<-0.7): + buy_points.append({'估值接近30天最小净值': str(todaydata[1] )+str('<=')+str( r*jizhipoints['30daysmin'][1])}) + # elif (todaydata[1] <= r*jizhipoints['5daysmin'][1]): + # buy_points['today<1.02*5min'] = str(todaydata[1] )+str('<=')+str( r*jizhipoints['5daysmin'][1]) + #---------------------------- + elif (todaydata[1] >= rmax*jizhipoints['allmax'][1])and method=='general': + sell_point.append({'估值接近1年最大净值': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['allmax'][1])}) + elif (todaydata[1] >= rmax*jizhipoints['180daysmax'][1])and method=='general': + sell_point.append({'估值接近180天最大净值': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['180daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['30daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['30daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['5daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['5daysmax'][1])}) + + # def change_fenxi(change): + if(sum(change)/len(change)>=0.5)and change[0]<0.2 and change[0]= 0.7)and change[0]<0.2 and sum(change7[:2]) / len(change7[:2])<0.4 and method == 'top' : + sell_point.append({'5天涨幅均值': round(sum(change) / len(change), 5)}) + + big=[];small=[];small7=[];big7=[] + if len(change)>3: + for i in range(len(change)): + if (change[i]>0): + big.append(change[i]) + elif (change[i]<0) : + small.append(change[i]) + for j in range(0,len(change7)): + if (change7[j]>0.05)and method=='top': + big7.append(change7[j]) + elif (change7[j]<0.05)and method=='top': + small7.append(change7[j]) + if len(big)>=4 and change[0]<0.2 and change[0]=5 and change[0]<0.2 and change[0]=3): + # sell_point.append({u'go up 4days': big}) + if (len(small)>=4 ) : + buy_points.append({'已跌四天':change7}) + elif(((max(data5days[2:])-data5days[0])/max(data5days[2:]))>=0.025)and(sum(change)<-1.1): + down=round((max(data5days[2:])-data5days[0])/max(data5days[2:]),5) + buy_points.append({'五天跌幅超2.5%': down}) + + return {'sell':sell_point,'buy':buy_points} + +def main_run(all_fund_list): + code = [['002124','广发新兴产业'],['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + buysell = [] + buysell1 = [] + for i in code: + jingzhimin = get_histrydata(i, 365*1) + buysell1.append(macdmain(i,jingzhimin)) + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, jingzhimin=jingzhimin, method ='general') + if sb: + buysell.append([i,sb,'code']) + for i in all_fund_list: + # save(strfundcode=i ,numdays=365*1) + jingzhimin1 = get_histrydata(i, 365*1) + buysell1.append(macdmain(i,jingzhimin1)) + sb=fenxi(strfundcode=i, jingzhimin=jingzhimin1, method='top') + if sb: + buysell.append([i, sb, 'all_fund_list']) + buysellstock = mainStock() + return buysell,buysell1,buysellstock + +s = sched.scheduler(time.time, time.sleep) +class DateEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, datetime): + return obj.__str__() + return json.JSONEncoder.default(self, obj) + + # sleep() +#@itchat.msg_register(itchat.content.TEXT) +def print_content(msg): + print msg['Text'] +def readmsg(msg): + return msg +def send_email(text): + #text = self.claw_content() + #open('b.txt', 'w').write(str(text[1]) + '\n' + str(text[0]) + '\n') + username = 'lsl_cug@126.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + receiver = ['1627041882@qq.com','1006209211@qq.com'] # '760140853@qq.com','xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com','1847725033@qq.com','849281511@qq.com' + if sender =='': + username = str(raw_input("Please Input Sender Email Address,for example:xxxxxxxxxx@126.com \n")) + sender = username + password = str(raw_input("Please Input Sender Password \n")) + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + iRec = 1 + while iRec>0: + CmdRec = ''#raw_input("Whether you want to add another Receiver Address(default n)? \n") + if CmdRec == 'y' or CmdRec == 'yes': + iRec = 1 + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + else: + iRec = 0 + + ConfirmRec = ''#raw_input("Confirm? \n") + if ConfirmRec == 'n' or ConfirmRec == 'no': + print("What Do You Want? Maybe run this program again.\n") + exit(1) + else: + for rece in receiver: + print("OK \n"+ username + " sendto " + rece) + # 创建一个带附件的实例 + msg = MIMEMultipart() + # msg = MIMEText(str(text), 'plain', 'utf-8') + msg['From'] = formataddr(['user', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + + subject_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + subject = '基金信息' + msg['Subject'] = subject + + # 邮件正文内容 + # print str(text[0]) + realText = text#sendmsg #str(text) #'\n'+str(subject_time)+':主人,有人来招人啦!^—^\n'+ '海投网:'+str(text[1])+'.'#+str(text[0])#'地大就业网招聘公告:'+str(text1[1])+'地大就业网gis等招聘信息:'+str(text2[1])+'.'#+str(text1[0])+'\n'+str(text2[1])+'\n'+str(text2[0]) + print realText + msg.attach(MIMEText(realText, 'plain', 'utf-8')) + # 构造附件1,传送当前目录下的 test.txt 文件 + # att1 = MIMEApplication(open('b.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att1.add_header('Content-Disposition', 'attachment', filename='hjx.txt') + # msg.attach(att1) + # # 构造附件1,传送当前目录下的 test.txt 文件 + # att2 = MIMEApplication(open('b1.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att2.add_header('Content-Disposition', 'attachment', filename='b1.txt') + # msg.attach(att2) + #att3 = MIMEApplication(open('基金综合排名结果.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + #att3.add_header('Content-Disposition', 'attachment', filename='b2.txt') + #msg.attach(att3) + smtpserver = 'smtp.126.com' + try: + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e: + print(u"Error: 无法发送邮件:" + str(e)) + smtp.quit() + try: + username = '15623863340@163.com' # input("请输入账号:") + password = '133499cug' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['lishulin', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.163.com' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + for jj in receiver: + smtp.sendmail(sender, jj, msg.as_string()) + time.sleep(6) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e1: + print(u"Error: 无法发送邮件:"+str(e1)) + smtp.quit() + try: + username = '15623863340@sina.com' # input("请输入账号:") + password = '133499' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['15623863340@sina.com', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.sina.cn' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e2: + print(u"Error: 无法发送邮件:" + str(e2)) + smtp.quit() +def deb_print(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H=now[9:11] + M = now[12:14] + S = now[15:] + # print now + print H,M, S + return H,M, S + +def check_time(H, M,S): + strtoday1 = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + sdatetime = datetime.datetime.strptime(strtoday1, '%Y-%m-%d') + sdatetime.isoweekday() + #if sdatetime.isoweekday() == 7: + if(H == "14" and int(M) == 30 and S == "20")and(sdatetime.isoweekday() != 7)and(sdatetime.isoweekday() != 6):#(H == "14" and M == "08" and S == "10") or + # itchat.auto_login(hotReload=True) + # itchat.run + # curTime = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # itchat.send(str(curTime), toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + buysell = main_run(all_fund_list) + print(str(buysell)) + sendmsg=[] + # f = open("buysell.txt",'a') + for i in buysell: + # write_str = str(i) + '\n' + # f.write(write_str) + st = '' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + st += str(j) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + st += str(k) + ' ' + if st != '': + sendmsg.append(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +(' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm '%i[0][0])) + send_email(sendmsg) + # itchat.send(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +('-- http://www.efunds.com.cn/html/fund/%s_fundinfo.htm'%i[0][0]), 'filehelper') + # itchat.send(str(i[0]) + st, toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + s.enter(1, 1, check_time, deb_print()) + + +def main1(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H = now[9:11] + M = now[12:14] + S = now[15:] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + all_fund_list1 = main_zf('All') + #sign=macdmain(code) + if (int(H)): # >= 19(H == "14" and M == "08" and S == "10") or + ibuysell1 = main_run(all_fund_list1[:80]) + print(str(ibuysell1)) + sendmsg = '股市有风险,投资需谨慎。模型难免有误,具体买卖需看下走势。1、根据MACD与MA均线模型获取近两三天内买卖信号如,[2018-01-29 00:, signal:, -1],signal(1:买, -1:卖, 0:默认),该模型有一定参考依据,但信号常反应较慢,需结合走势判断。 2、连续四五天涨跌与今日净值是否接近最大最小净值判断买卖信息,该模型在适合小涨小跌,大涨大跌时需谨慎。 \n' + sendmsg +='A股 https://www.baidu.com/s?tn=baidurt&rtt=1&bsst=1&wd=A%B9%C9&origin=ps'+ '\n' + sendmsg +='股票的走势比较、指标比较 http://quotes.money.163.com/tools/stockcomp/0000016,1399005,1399006,1399300,1399959.html'+ '\n' + sendmsg +='行业板块资金流向 http://data.eastmoney.com/bkzj/hy.html'+ '\n' + # f = open("buysell.txt",'a') + for j in ibuysell1[1]: + for m in j: + if len(m) > 0: + if m[2][3]> -35 : + sendmsg += str(m[0][0].encode("utf-8")) + ',' + str(m[0][1].encode("utf-8")) + ',' + str( + m[1]) + ',回测收益' + str(m[2][0]) + ',买卖:' + str(m[2][1][0]) + ',交易次数:' + str( + m[2][2]) + ',超额收益' + str(m[2][3]) + ',' + ( + ' http://fund.eastmoney.com/%s.html' % m[0][0]) + '\n' + sendmsg +='1、根据MACD与MA均线模型获取沪深股指近两三天内买卖信号 '+ '\n' + for n in ibuysell1[2] : + # for n in k: + if len(n) > 0 and n[2][3]> -30 and n[0][0][:3] == '000': + if n[2][3]> -30 and n[0][0][:3] == '000': + sendmsg += str(n[0][0].encode("utf-8")) + ',' + str(n[0][1].encode("utf-8")) + ',' + str( + n[1]) + ',回测收益' + str(n[2][0]) + ',买卖:' + str(n[2][1][0]) + ',交易次数:' + str( + n[2][2]) + ',超额收益' + str(n[2][3]) + ',' + ( + ' http://quotes.money.163.com/0%s.html' % n[0][0]) + '\n' + elif len(n) > 0 and n[2][3]> -30 and n[0][0][:3] == '399': + if n[2][3]> -30 and n[0][0][:3] == '399': + sendmsg += str(n[0][0].encode("utf-8")) + ',' + str(n[0][1].encode("utf-8")) + ',' + str( + n[1]) + ',回测收益' + str(n[2][0]) + ',买卖:' + str(n[2][1][0]) + ',交易次数:' + str( + n[2][2]) + ',超额收益' + str(n[2][3]) + ',' + ( + ' http://quotes.money.163.com/1%s.html' % n[0][0]) + '\n' + buysmg = '' + sellmsg='' + sendmsg +='2、连续四五天涨跌与今日净值是否接近最大最小净值判断买卖信息,该模型在适合小涨小跌,大涨大跌时需谨慎。\n' + for i in ibuysell1[0]: + # write_str = str(i) + '\n' + # f.write(write_str) + st = ' ' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + for h in j: + st += h + str(j[h]) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + for t in k: + st += t + str(k[t]) + ' ' + if st != ' ' and '买'in st: + if i[2]=='code': + buysmg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + else: + buysmg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + '\n' + if st != ' ' and '卖'in st: + if i[2] == 'code': + sellmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + else: + sellmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + '\n' + sendmsg +=buysmg + sendmsg += sellmsg + print sendmsg + send_email(sendmsg) + # while True: + # now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # # date = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d") + # H = now[9:11] + # M = now[12:14] + # S = now[15:] + # # print H,S,M + # print 'Start:'+'13:05' +' and 14:30 '+'send to email.'+"\n" +'please wait:' + # + # # print time.localtime() + # # print time.strftime("%y-%m-%d %H:%M:%S",time.localtime()) + # # xiaozhao = Xiaozhao() + # # xiaozhao.send_email() + # s.enter(1, 1, check_time, deb_print()) + # s.run() + +if __name__=='__main__': + # itchat.auto_login(hotReload=True) + # itchat.run + # + # curTime = now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # buysell = one_predict.main_run() + # f = open("buysell.txt",'a') + # for i in buysell: + # # write_str = str(i) + '\n' + # # f.write(write_str) + # st = '' + # if i[1]['buy'] != []: + # st = u'买入点' + # for j in i[1]['buy']: + # st += str(j) + ' ' + # elif i[1]['sell'] != []: + # st += u' 卖出点' + # for k in i[1]['sell']: + # st += str(k) + ' ' + # if st != '': + # itchat.send(str(i[0]) + st, 'filehelper') + # itchat.send(str(i[0]) + st,toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + all_fund_list = main_zf() + main1() + # f.close() + # itchat.send("@fil@%s" % 'buysell.txt', 'filehelper') + # for (name, fund_id) in ids.items(): + # url = 'http://fund.eastmoney.com/%s.html' % fund_id + # value = spider(url) + # sign = value[0] + # value_num = value[1:-1] + # name = name.decode('utf-8') + # buysell=one_predict.main_run() + # itchat.send(buysell , 'filehelper') + # if(sign == '-' and float(value_num)>2.5): + # content = u'%s跌幅很大,可以补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') + # else: + # content = u'%s 不需要补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') diff --git a/trade_process/efund_mail2.pyc b/trade_process/efund_mail2.pyc new file mode 100644 index 0000000..7d0f649 Binary files /dev/null and b/trade_process/efund_mail2.pyc differ diff --git a/trade_process/efund_mail2_BACKUP_5352.py b/trade_process/efund_mail2_BACKUP_5352.py new file mode 100644 index 0000000..83b8b85 --- /dev/null +++ b/trade_process/efund_mail2_BACKUP_5352.py @@ -0,0 +1,582 @@ +#!/usr/bin/python2.7 +# -*- coding: utf-8 -*- +# from url_info import * +# from spider import * +#import itchat +#from sleep import * +# import datetime +# import one_predict +import json,time +import sched + +import datetime +import re +# import sys +import urllib2 +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +from email.utils import formataddr +from email.mime.application import MIMEApplication +from fund_zf import main_zf +# from strategy.macd_back_test import macdmain +# from numpy import mean, ptp, var, std + +import requests +from bs4 import BeautifulSoup + + +def spider(url): + r = requests.get(url) + page = r.text + soup = BeautifulSoup(page, 'html.parser') + value = soup.find_all(id='gz_gszzl') + value = value[0].get_text().replace('%','') + value=value.encode('utf-8') + value1 = soup.find_all(id='gz_gsz') + value1 = value1[0].get_text().encode('utf-8') + try: + return [float(value1),float(value1),float(value)] + except ValueError as e: + return +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + +# 获取某一基金在某一日的累计净值数据 +def get_jingzhi(strfundcode, strdate,stredate): + try: + url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=' + str(strfundcode) + '&page=1&per=1000&sdate=' + str(strdate) + '&edate=' + str(stredate) + print u'数据链接:'+url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + return '-1' + + json_fund_value = response.read().decode('utf-8') + # print json_fund_value + + tr_re = re.compile(r'(.*?)') + item_re = re.compile( + r'''(\d{4}-\d{2}-\d{2})(.*?)(.*?)(.*?)(.*?)(.*?)''', + re.X) + + # 获取不到 返回0 + jingzhi ='-1' + result=[] + + for line in tr_re.findall(json_fund_value): + # print line + '\n' + match = item_re.match(line) + if match: + entry = match.groups() + entry[3].rstrip('%') + date = datetime.datetime.strptime(entry[0], '%Y-%m-%d') + # jingzhi = entry[2] + if entry[3]!='': + result.append([date, float(entry[1]),float(entry[2]), float(entry[3].rstrip('%'))]) + else: + result.append([date, float(entry[1]), float(entry[2]), 0]) + jingzhi1 = entry[1] + jingzhi2 = entry[2] + # print jingzhi2 + + if jingzhi2.strip() == '': + # 040028 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-01-06 1.4414 暂停申购 暂停赎回 + # 2017-01-05 1.4369 暂停申购 暂停赎回 + jingzhi = '-1' + elif jingzhi2.find('%') > -1: + # 040003 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-03-27 1.1149 3.9450% 限制大额申购 开放赎回 + # 2017-03-26* 2.2240 3.8970% 限制大额申购 开放赎回 + jingzhi = '-1' + elif float(jingzhi1) > float(jingzhi2): + # 502015 + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-27 0.6980 0.3785 -2.24% 场内买入 场内卖出 + # 2017-03-24 0.7140 0.3945 5.15% 场内买入 场内卖出 + jingzhi = entry[1] + else: + # + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-28 1.7720 1.7720 -0.23% 开放申购 开放赎回 + # 2017-03-27 1.7761 1.7761 -0.43% 开放申购 开放赎回 + jingzhi = entry[2] + return result + +#获取历史数据 +def get_histrydata(strfundcode,numdays): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print u'结束时间:' + strtoday + url = 'http://fund.eastmoney.com/%s.html' % strfundcode[0] + todayvalue = spider(url) + + # 昨天 + yestodaytime = tdatetime - datetime.timedelta(days=1) + yestoday = datetime.datetime.strftime(yestodaytime, '%Y-%m-%d') + + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=numdays) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print u'开始时间:' + strsdate + + # 1.1 起始时间 + strsdate = strsdate # sys.argv[1] + stredate = yestoday # sys.argv[2] + + # 今日零时 + # strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + # tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + # print tdatetime + + # 开始时间 如果是周六 周日 调整到周五 + # print strsdate + sdatetime = datetime.datetime.strptime(strsdate, '%Y-%m-%d') + sdatetime.isoweekday() + if sdatetime.isoweekday() == 7: + sdatetime = sdatetime + datetime.timedelta(days=-2) + elif sdatetime.isoweekday() == 6: + sdatetime = sdatetime + datetime.timedelta(days=-1) + + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + + # 结束时间 如果是周六 周日 调整到周五 + # print stredate + edatetime = datetime.datetime.strptime(stredate, '%Y-%m-%d') + edatetime.isoweekday() + if edatetime.isoweekday() == 7: + edatetime = edatetime + datetime.timedelta(days=-2) + elif edatetime.isoweekday() == 6: + edatetime = edatetime + datetime.timedelta(days=-1) + + stredate = datetime.datetime.strftime(edatetime, '%Y-%m-%d') + # print stredate + + # 判断时间段 今日净值要下午才出 一律不处理 + if edatetime <= sdatetime or tdatetime <= sdatetime or tdatetime <= edatetime: + print '判断时间段 今日净值要下午才出 一律不处理' + print 'date input error!\n' + + jingzhimin = get_jingzhi(strfundcode[0], strsdate, stredate) + if todayvalue != None: + jingzhimin.insert(0, [tdatetime, todayvalue[0], todayvalue[1], todayvalue[2]]) + return jingzhimin + +#计算交易策略 +def fenxi(strfundcode,numdays): + #获取历史数据 + jingzhimin=get_histrydata(strfundcode,numdays) + years = [x[0] for x in jingzhimin] + price = [x[1] for x in jingzhimin] + changeprice = [x[3]/x[1] for x in jingzhimin] + price_stre = [((x[1] - (sum(price)/len(price)))/(max(price)-min(price)))*(max(changeprice)-min(changeprice)) for x in jingzhimin] + # plt.plot(years, changeprice, 'g',label='change') + starty = [0 for x in jingzhimin] + jizhipoints=jizhi(jingzhimin) + celue_point=celue(jingzhimin,jizhipoints) + # change_fenxi(change5days) + return celue_point + +def stdDeviation(a): + l = len(a) + m = sum(a) / l + d = 0 + for i in a: d += (i - m) ** 2 + return (d * (1 / l)) ** 0.5 + +#统计 +# def caculate(data): +# # 极差 +# ptp(data) +# # 方差 +# var(data) +# # 标准差 +# std(data) +# # 变异系数 +# mean(data) / std(data) +# norm.ppf(0.05, mean(data), std(data)) + +#求极值 +def jizhi(funddata): + jizhipoints={} + alldata = [x[1] for x in funddata[::-2]] + jizhipoints['allmax']= [alldata.index(max(alldata)),max(alldata)] + jizhipoints['allmin']= [alldata.index(min(alldata)),min(alldata)] + data30days = [x[1] for x in funddata[:-30:-2]] + jizhipoints['30daysmax'] = [data30days.index(max(data30days)),max(data30days)] + jizhipoints['30daysmin'] = [data30days.index(min(data30days)),min(data30days)] + data180days = [x[1] for x in funddata[:-180:-2]] + jizhipoints['180daysmax'] = [data180days.index(max(data180days)), max(data180days)] + jizhipoints['180daysmin'] = [data180days.index(min(data180days)), min(data180days)] + data5days = [x[1] for x in funddata[:-5:-2]] + jizhipoints['5daysmax'] = [data5days.index(max(data5days)), max(data5days)] + jizhipoints['5daysmin'] = [data5days.index(min(data5days)), min(data5days)] + return jizhipoints + +#交易策略监测 +def celue(funddata,jizhipoints): + todaydata = funddata[0] + data5days = [x[1] for x in funddata[:6:1]] + change = [x[3] for x in funddata[:5:1]] + change7 = [x[3] for x in funddata[:7:1]] + change12days= [x[3] for x in funddata[:90:1]] + if stdDeviation(change12days)<0.3: + r=1.005;rmax=0.995 + elif stdDeviation(change12days) > 0.6: + r = 1.005;rmax = 0.995 + else: + r = 1.005;rmax = 0.995 + buy_points = [] + sell_point = [] + + #根据净值比较 + if(todaydata[1]<=r*jizhipoints['allmin'][1]): + buy_points.append({'today<1.02*allmin':str(todaydata[1])+str('<=')+str(r*jizhipoints['allmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['180daysmin'][1]): + buy_points.append({'today<1.02*180min': str(todaydata[1])+str('<=')+str(r*jizhipoints['180daysmin'][1])}) + # elif(todaydata[1]<=r*jizhipoints['30daysmin'][1]): + # buy_points.append({'today<1.02*30min': str(todaydata[1] )+str('<=')+str( r*jizhipoints['30daysmin'][1])}) + # elif (todaydata[1] <= r*jizhipoints['5daysmin'][1]): + # buy_points['today<1.02*5min'] = str(todaydata[1] )+str('<=')+str( r*jizhipoints['5daysmin'][1]) + #---------------------------- + elif (todaydata[1] >= rmax*jizhipoints['allmax'][1]): + sell_point.append({'today>0.98*allmax': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['allmax'][1])}) + elif (todaydata[1] >= rmax*jizhipoints['180daysmax'][1]): + sell_point.append({'today>0.98*180max': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['180daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['30daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['30daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['5daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['5daysmax'][1])}) + + # def change_fenxi(change): + if(sum(change)/len(change)>=0.46): + sell_point.append({'mean5up':round(sum(change)/len(change),5)}) + elif(sum(change)/len(change)<=-0.46): + buy_points.append({'mean5up':round(sum(change)/len(change),5)}) + + big=[];small=[] + if len(change)>3: + for i in range(len(change)): + if (change[i]>0): + big.append(change[i]) + elif (change[i]<0): + small.append(change[i]) + if len(big)>=4 and change[0]<0.2 : + sell_point.append({'go up 4days':change7}) + # elif (change[0]=3): + # sell_point.append({u'go up 4days': big}) + if (len(small)>=4 and change[0]>0) or (len(small)>=3 and change[0]<-0.5 and change[1]<0.1): + buy_points.append({'go down 3days':change7}) + return {'sell':sell_point,'buy':buy_points} + +def main_run(all_fund_list): + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + + buysell = [] + for i in code: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + for i in all_fund_list[0:50]: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + return buysell + +s = sched.scheduler(time.time, time.sleep) +class DateEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, datetime): + return obj.__str__() + return json.JSONEncoder.default(self, obj) + + # sleep() +#@itchat.msg_register(itchat.content.TEXT) +def print_content(msg): + print msg['Text'] +def readmsg(msg): + return msg +def send_email(text): + #text = self.claw_content() + #open('b.txt', 'w').write(str(text[1]) + '\n' + str(text[0]) + '\n') + username = 'lsl_cug@126.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + receiver = ['1627041882@qq.com','760140853@qq.com'] # '760140853@qq.com','xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com','1847725033@qq.com','849281511@qq.com' + if sender =='': + username = str(raw_input("Please Input Sender Email Address,for example:xxxxxxxxxx@126.com \n")) + sender = username + password = str(raw_input("Please Input Sender Password \n")) + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + iRec = 1 + while iRec>0: + CmdRec = ''#raw_input("Whether you want to add another Receiver Address(default n)? \n") + if CmdRec == 'y' or CmdRec == 'yes': + iRec = 1 + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + else: + iRec = 0 + + ConfirmRec = ''#raw_input("Confirm? \n") + if ConfirmRec == 'n' or ConfirmRec == 'no': + print("What Do You Want? Maybe run this program again.\n") + exit(1) + else: + for rece in receiver: + print("OK \n"+ username + " sendto " + rece) + # 创建一个带附件的实例 + msg = MIMEMultipart() + # msg = MIMEText(str(text), 'plain', 'utf-8') + msg['From'] = formataddr(['user', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + + subject_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + subject = '基金信息' + msg['Subject'] = subject + + # 邮件正文内容 + # print str(text[0]) + realText = text#sendmsg #str(text) #'\n'+str(subject_time)+':主人,有人来招人啦!^—^\n'+ '海投网:'+str(text[1])+'.'#+str(text[0])#'地大就业网招聘公告:'+str(text1[1])+'地大就业网gis等招聘信息:'+str(text2[1])+'.'#+str(text1[0])+'\n'+str(text2[1])+'\n'+str(text2[0]) + print realText + msg.attach(MIMEText(realText, 'plain', 'utf-8')) + + # 构造附件1,传送当前目录下的 test.txt 文件 + # att1 = MIMEApplication(open('b.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att1.add_header('Content-Disposition', 'attachment', filename='hjx.txt') + # msg.attach(att1) + # # 构造附件1,传送当前目录下的 test.txt 文件 + # att2 = MIMEApplication(open('b1.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att2.add_header('Content-Disposition', 'attachment', filename='b1.txt') + # msg.attach(att2) + # att3 = MIMEApplication(open('b2.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att3.add_header('Content-Disposition', 'attachment', filename='b2.txt') + # msg.attach(att3) + smtpserver = 'smtp.126.com' + try: + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e: + print(u"Error: 无法发送邮件:" + str(e)) + smtp.quit() + try: + username = 'lishulincug@163.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['lishulin', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.163.com' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + for jj in receiver: + smtp.sendmail(sender, jj, msg.as_string()) + time.sleep(35) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e1: + print(u"Error: 无法发送邮件:"+str(e1)) + smtp.quit() + try: + username = '15623863340@sina.cn' # input("请输入账号:") + password = '133499' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['15623863340@sina.cn', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.sina.cn' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e2: + print(u"Error: 无法发送邮件:" + str(e2)) + smtp.quit() +def deb_print(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H=now[9:11] + M = now[12:14] + S = now[15:] + # print now + print H,M, S + return H,M, S + +def check_time(H, M,S): + strtoday1 = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + sdatetime = datetime.datetime.strptime(strtoday1, '%Y-%m-%d') + sdatetime.isoweekday() + #if sdatetime.isoweekday() == 7: + if(H == "14" and int(M) == 30 and S == "20")and(sdatetime.isoweekday() != 7)and(sdatetime.isoweekday() != 6):#(H == "14" and M == "08" and S == "10") or + # itchat.auto_login(hotReload=True) + # itchat.run + # curTime = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # itchat.send(str(curTime), toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + buysell = main_run(all_fund_list) + print(str(buysell)) + sendmsg=[] + # f = open("buysell.txt",'a') + for i in buysell: + # write_str = str(i) + '\n' + # f.write(write_str) + st = '' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + st += str(j) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + st += str(k) + ' ' + if st != '': + sendmsg.append(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +(' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm '%i[0][0])) + send_email(sendmsg) + # itchat.send(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +('-- http://www.efunds.com.cn/html/fund/%s_fundinfo.htm'%i[0][0]), 'filehelper') + # itchat.send(str(i[0]) + st, toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + s.enter(1, 1, check_time, deb_print()) + + +def main1(sign): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H = now[9:11] + M = now[12:14] + S = now[15:] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + all_fund_list = main_zf() + #sign=macdmain(code) + if (int(H)): # >= 19(H == "14" and M == "08" and S == "10") or + buysell1 = main_run(all_fund_list) + print(str(buysell1)) + sendmsg = '' + # f = open("buysell.txt",'a') + for j in sign: +<<<<<<< Updated upstream + #sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+'\n' +======= +>>>>>>> Stashed changes + sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+','+ (' http://fund.eastmoney.com/%s.html' % j[0][0])+'\n' + for i in buysell1: + # write_str = str(i) + '\n' + # f.write(write_str) + st = ' ' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + for h in j: + st += h + str(j[h]) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + for t in k: + st += t + str(k[t]) + ' ' + if st != ' ': + sendmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + # print sendmsg + send_email(sendmsg) + while True: + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # date = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d") + H = now[9:11] + M = now[12:14] + S = now[15:] + # print H,S,M + print 'Start:'+'13:05' +' and 14:30 '+'send to email.'+"\n" +'please wait:' + + # print time.localtime() + # print time.strftime("%y-%m-%d %H:%M:%S",time.localtime()) + # xiaozhao = Xiaozhao() + # xiaozhao.send_email() + s.enter(1, 1, check_time, deb_print()) + s.run() + +if __name__=='__main__': + # itchat.auto_login(hotReload=True) + # itchat.run + # + # curTime = now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # buysell = one_predict.main_run() + # f = open("buysell.txt",'a') + # for i in buysell: + # # write_str = str(i) + '\n' + # # f.write(write_str) + # st = '' + # if i[1]['buy'] != []: + # st = u'买入点' + # for j in i[1]['buy']: + # st += str(j) + ' ' + # elif i[1]['sell'] != []: + # st += u' 卖出点' + # for k in i[1]['sell']: + # st += str(k) + ' ' + # if st != '': + # itchat.send(str(i[0]) + st, 'filehelper') + # itchat.send(str(i[0]) + st,toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + all_fund_list = main_zf() + main1() + # f.close() + # itchat.send("@fil@%s" % 'buysell.txt', 'filehelper') + # for (name, fund_id) in ids.items(): + # url = 'http://fund.eastmoney.com/%s.html' % fund_id + # value = spider(url) + # sign = value[0] + # value_num = value[1:-1] + # name = name.decode('utf-8') + # buysell=one_predict.main_run() + # itchat.send(buysell , 'filehelper') + # if(sign == '-' and float(value_num)>2.5): + # content = u'%s跌幅很大,可以补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') + # else: + # content = u'%s 不需要补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') diff --git a/trade_process/efund_mail2_BASE_5352.py b/trade_process/efund_mail2_BASE_5352.py new file mode 100644 index 0000000..f653d2e --- /dev/null +++ b/trade_process/efund_mail2_BASE_5352.py @@ -0,0 +1,578 @@ +#!/usr/bin/python2.7 +# -*- coding: utf-8 -*- +# from url_info import * +# from spider import * +#import itchat +#from sleep import * +# import datetime +# import one_predict +import json,time +import sched + +import datetime +import re +# import sys +import urllib2 +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +from email.utils import formataddr +from email.mime.application import MIMEApplication +from fund_zf import main_zf +from trade_process.strategy.macd_back_test import macdmain +# from numpy import mean, ptp, var, std + +import requests +from bs4 import BeautifulSoup + + +def spider(url): + r = requests.get(url) + page = r.text + soup = BeautifulSoup(page, 'html.parser') + value = soup.find_all(id='gz_gszzl') + value = value[0].get_text().replace('%','') + value=value.encode('utf-8') + value1 = soup.find_all(id='gz_gsz') + value1 = value1[0].get_text().encode('utf-8') + try: + return [float(value1),float(value1),float(value)] + except ValueError as e: + return +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + +# 获取某一基金在某一日的累计净值数据 +def get_jingzhi(strfundcode, strdate,stredate): + try: + url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=' + str(strfundcode) + '&page=1&per=1000&sdate=' + str(strdate) + '&edate=' + str(stredate) + print u'数据链接:'+url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + return '-1' + + json_fund_value = response.read().decode('utf-8') + # print json_fund_value + + tr_re = re.compile(r'(.*?)') + item_re = re.compile( + r'''(\d{4}-\d{2}-\d{2})(.*?)(.*?)(.*?)(.*?)(.*?)''', + re.X) + + # 获取不到 返回0 + jingzhi ='-1' + result=[] + + for line in tr_re.findall(json_fund_value): + # print line + '\n' + match = item_re.match(line) + if match: + entry = match.groups() + entry[3].rstrip('%') + date = datetime.datetime.strptime(entry[0], '%Y-%m-%d') + # jingzhi = entry[2] + if entry[3]!='': + result.append([date, float(entry[1]),float(entry[2]), float(entry[3].rstrip('%'))]) + else: + result.append([date, float(entry[1]), float(entry[2]), 0]) + jingzhi1 = entry[1] + jingzhi2 = entry[2] + # print jingzhi2 + + if jingzhi2.strip() == '': + # 040028 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-01-06 1.4414 暂停申购 暂停赎回 + # 2017-01-05 1.4369 暂停申购 暂停赎回 + jingzhi = '-1' + elif jingzhi2.find('%') > -1: + # 040003 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-03-27 1.1149 3.9450% 限制大额申购 开放赎回 + # 2017-03-26* 2.2240 3.8970% 限制大额申购 开放赎回 + jingzhi = '-1' + elif float(jingzhi1) > float(jingzhi2): + # 502015 + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-27 0.6980 0.3785 -2.24% 场内买入 场内卖出 + # 2017-03-24 0.7140 0.3945 5.15% 场内买入 场内卖出 + jingzhi = entry[1] + else: + # + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-28 1.7720 1.7720 -0.23% 开放申购 开放赎回 + # 2017-03-27 1.7761 1.7761 -0.43% 开放申购 开放赎回 + jingzhi = entry[2] + return result + +#获取历史数据 +def get_histrydata(strfundcode,numdays): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print u'结束时间:' + strtoday + url = 'http://fund.eastmoney.com/%s.html' % strfundcode[0] + todayvalue = spider(url) + + # 昨天 + yestodaytime = tdatetime - datetime.timedelta(days=1) + yestoday = datetime.datetime.strftime(yestodaytime, '%Y-%m-%d') + + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=numdays) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print u'开始时间:' + strsdate + + # 1.1 起始时间 + strsdate = strsdate # sys.argv[1] + stredate = yestoday # sys.argv[2] + + # 今日零时 + # strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + # tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + # print tdatetime + + # 开始时间 如果是周六 周日 调整到周五 + # print strsdate + sdatetime = datetime.datetime.strptime(strsdate, '%Y-%m-%d') + sdatetime.isoweekday() + if sdatetime.isoweekday() == 7: + sdatetime = sdatetime + datetime.timedelta(days=-2) + elif sdatetime.isoweekday() == 6: + sdatetime = sdatetime + datetime.timedelta(days=-1) + + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + + # 结束时间 如果是周六 周日 调整到周五 + # print stredate + edatetime = datetime.datetime.strptime(stredate, '%Y-%m-%d') + edatetime.isoweekday() + if edatetime.isoweekday() == 7: + edatetime = edatetime + datetime.timedelta(days=-2) + elif edatetime.isoweekday() == 6: + edatetime = edatetime + datetime.timedelta(days=-1) + + stredate = datetime.datetime.strftime(edatetime, '%Y-%m-%d') + # print stredate + + # 判断时间段 今日净值要下午才出 一律不处理 + if edatetime <= sdatetime or tdatetime <= sdatetime or tdatetime <= edatetime: + print '判断时间段 今日净值要下午才出 一律不处理' + print 'date input error!\n' + + jingzhimin = get_jingzhi(strfundcode[0], strsdate, stredate) + if todayvalue != None: + jingzhimin.insert(0, [tdatetime, todayvalue[0], todayvalue[1], todayvalue[2]]) + return jingzhimin + +#计算交易策略 +def fenxi(strfundcode,numdays): + #获取历史数据 + jingzhimin=get_histrydata(strfundcode,numdays) + years = [x[0] for x in jingzhimin] + price = [x[1] for x in jingzhimin] + changeprice = [x[3]/x[1] for x in jingzhimin] + price_stre = [((x[1] - (sum(price)/len(price)))/(max(price)-min(price)))*(max(changeprice)-min(changeprice)) for x in jingzhimin] + # plt.plot(years, changeprice, 'g',label='change') + starty = [0 for x in jingzhimin] + jizhipoints=jizhi(jingzhimin) + celue_point=celue(jingzhimin,jizhipoints) + # change_fenxi(change5days) + return celue_point + +def stdDeviation(a): + l = len(a) + m = sum(a) / l + d = 0 + for i in a: d += (i - m) ** 2 + return (d * (1 / l)) ** 0.5 + +#统计 +# def caculate(data): +# # 极差 +# ptp(data) +# # 方差 +# var(data) +# # 标准差 +# std(data) +# # 变异系数 +# mean(data) / std(data) +# norm.ppf(0.05, mean(data), std(data)) + +#求极值 +def jizhi(funddata): + jizhipoints={} + alldata = [x[1] for x in funddata[::-2]] + jizhipoints['allmax']= [alldata.index(max(alldata)),max(alldata)] + jizhipoints['allmin']= [alldata.index(min(alldata)),min(alldata)] + data30days = [x[1] for x in funddata[:-30:-2]] + jizhipoints['30daysmax'] = [data30days.index(max(data30days)),max(data30days)] + jizhipoints['30daysmin'] = [data30days.index(min(data30days)),min(data30days)] + data180days = [x[1] for x in funddata[:-180:-2]] + jizhipoints['180daysmax'] = [data180days.index(max(data180days)), max(data180days)] + jizhipoints['180daysmin'] = [data180days.index(min(data180days)), min(data180days)] + data5days = [x[1] for x in funddata[:-5:-2]] + jizhipoints['5daysmax'] = [data5days.index(max(data5days)), max(data5days)] + jizhipoints['5daysmin'] = [data5days.index(min(data5days)), min(data5days)] + return jizhipoints + +#交易策略监测 +def celue(funddata,jizhipoints): + todaydata = funddata[0] + data5days = [x[1] for x in funddata[:6:1]] + change = [x[3] for x in funddata[:5:1]] + change7 = [x[3] for x in funddata[:7:1]] + change12days= [x[3] for x in funddata[:90:1]] + if stdDeviation(change12days)<0.3: + r=1.005;rmax=0.995 + elif stdDeviation(change12days) > 0.6: + r = 1.005;rmax = 0.995 + else: + r = 1.005;rmax = 0.995 + buy_points = [] + sell_point = [] + + #根据净值比较 + if(todaydata[1]<=r*jizhipoints['allmin'][1]): + buy_points.append({'today<1.02*allmin':str(todaydata[1])+str('<=')+str(r*jizhipoints['allmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['180daysmin'][1]): + buy_points.append({'today<1.02*180min': str(todaydata[1])+str('<=')+str(r*jizhipoints['180daysmin'][1])}) + # elif(todaydata[1]<=r*jizhipoints['30daysmin'][1]): + # buy_points.append({'today<1.02*30min': str(todaydata[1] )+str('<=')+str( r*jizhipoints['30daysmin'][1])}) + # elif (todaydata[1] <= r*jizhipoints['5daysmin'][1]): + # buy_points['today<1.02*5min'] = str(todaydata[1] )+str('<=')+str( r*jizhipoints['5daysmin'][1]) + #---------------------------- + elif (todaydata[1] >= rmax*jizhipoints['allmax'][1]): + sell_point.append({'today>0.98*allmax': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['allmax'][1])}) + elif (todaydata[1] >= rmax*jizhipoints['180daysmax'][1]): + sell_point.append({'today>0.98*180max': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['180daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['30daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['30daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['5daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['5daysmax'][1])}) + + # def change_fenxi(change): + if(sum(change)/len(change)>=0.46): + sell_point.append({'mean5up':round(sum(change)/len(change),5)}) + elif(sum(change)/len(change)<=-0.46): + buy_points.append({'mean5up':round(sum(change)/len(change),5)}) + + big=[];small=[] + if len(change)>3: + for i in range(len(change)): + if (change[i]>0): + big.append(change[i]) + elif (change[i]<0): + small.append(change[i]) + if len(big)>=4 and change[0]<0.2 : + sell_point.append({'go up 4days':change7}) + # elif (change[0]=3): + # sell_point.append({u'go up 4days': big}) + if (len(small)>=4 and change[0]>0) or (len(small)>=3 and change[0]<-0.5 and change[1]<0.1): + buy_points.append({'go down 3days':change7}) + return {'sell':sell_point,'buy':buy_points} + +def main_run(all_fund_list): + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + + buysell = [] + for i in code: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + for i in all_fund_list[0:50]: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + return buysell + +s = sched.scheduler(time.time, time.sleep) +class DateEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, datetime): + return obj.__str__() + return json.JSONEncoder.default(self, obj) + + # sleep() +#@itchat.msg_register(itchat.content.TEXT) +def print_content(msg): + print msg['Text'] +def readmsg(msg): + return msg +def send_email(text): + #text = self.claw_content() + #open('b.txt', 'w').write(str(text[1]) + '\n' + str(text[0]) + '\n') + username = 'lsl_cug@126.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + receiver = ['1627041882@qq.com','760140853@qq.com'] # '760140853@qq.com','xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com','1847725033@qq.com','849281511@qq.com' + if sender =='': + username = str(raw_input("Please Input Sender Email Address,for example:xxxxxxxxxx@126.com \n")) + sender = username + password = str(raw_input("Please Input Sender Password \n")) + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + iRec = 1 + while iRec>0: + CmdRec = ''#raw_input("Whether you want to add another Receiver Address(default n)? \n") + if CmdRec == 'y' or CmdRec == 'yes': + iRec = 1 + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + else: + iRec = 0 + + ConfirmRec = ''#raw_input("Confirm? \n") + if ConfirmRec == 'n' or ConfirmRec == 'no': + print("What Do You Want? Maybe run this program again.\n") + exit(1) + else: + for rece in receiver: + print("OK \n"+ username + " sendto " + rece) + # 创建一个带附件的实例 + msg = MIMEMultipart() + # msg = MIMEText(str(text), 'plain', 'utf-8') + msg['From'] = formataddr(['user', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + + subject_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + subject = '基金信息' + msg['Subject'] = subject + + # 邮件正文内容 + # print str(text[0]) + realText = text#sendmsg #str(text) #'\n'+str(subject_time)+':主人,有人来招人啦!^—^\n'+ '海投网:'+str(text[1])+'.'#+str(text[0])#'地大就业网招聘公告:'+str(text1[1])+'地大就业网gis等招聘信息:'+str(text2[1])+'.'#+str(text1[0])+'\n'+str(text2[1])+'\n'+str(text2[0]) + print realText + msg.attach(MIMEText(realText, 'plain', 'utf-8')) + + # 构造附件1,传送当前目录下的 test.txt 文件 + # att1 = MIMEApplication(open('b.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att1.add_header('Content-Disposition', 'attachment', filename='hjx.txt') + # msg.attach(att1) + # # 构造附件1,传送当前目录下的 test.txt 文件 + # att2 = MIMEApplication(open('b1.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att2.add_header('Content-Disposition', 'attachment', filename='b1.txt') + # msg.attach(att2) + # att3 = MIMEApplication(open('b2.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att3.add_header('Content-Disposition', 'attachment', filename='b2.txt') + # msg.attach(att3) + smtpserver = 'smtp.126.com' + try: + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e: + print(u"Error: 无法发送邮件:" + str(e)) + smtp.quit() + try: + username = 'lishulincug@163.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['lishulin', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.163.com' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + for jj in receiver: + smtp.sendmail(sender, jj, msg.as_string()) + time.sleep(35) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e1: + print(u"Error: 无法发送邮件:"+str(e1)) + smtp.quit() + try: + username = '15623863340@sina.cn' # input("请输入账号:") + password = '133499' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['15623863340@sina.cn', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.sina.cn' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e2: + print(u"Error: 无法发送邮件:" + str(e2)) + smtp.quit() +def deb_print(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H=now[9:11] + M = now[12:14] + S = now[15:] + # print now + print H,M, S + return H,M, S + +def check_time(H, M,S): + strtoday1 = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + sdatetime = datetime.datetime.strptime(strtoday1, '%Y-%m-%d') + sdatetime.isoweekday() + #if sdatetime.isoweekday() == 7: + if(H == "14" and int(M) == 30 and S == "20")and(sdatetime.isoweekday() != 7)and(sdatetime.isoweekday() != 6):#(H == "14" and M == "08" and S == "10") or + # itchat.auto_login(hotReload=True) + # itchat.run + # curTime = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # itchat.send(str(curTime), toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + buysell = main_run(all_fund_list) + print(str(buysell)) + sendmsg=[] + # f = open("buysell.txt",'a') + for i in buysell: + # write_str = str(i) + '\n' + # f.write(write_str) + st = '' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + st += str(j) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + st += str(k) + ' ' + if st != '': + sendmsg.append(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +(' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm '%i[0][0])) + send_email(sendmsg) + # itchat.send(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +('-- http://www.efunds.com.cn/html/fund/%s_fundinfo.htm'%i[0][0]), 'filehelper') + # itchat.send(str(i[0]) + st, toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + s.enter(1, 1, check_time, deb_print()) + + +def main1(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H = now[9:11] + M = now[12:14] + S = now[15:] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + all_fund_list = main_zf(code) + sign=macdmain(code) + if (int(H)): # >= 19(H == "14" and M == "08" and S == "10") or + buysell1 = main_run(all_fund_list) + print(str(buysell1)) + sendmsg = '' + # f = open("buysell.txt",'a') + for j in sign: + sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+'\n' + for i in buysell1: + # write_str = str(i) + '\n' + # f.write(write_str) + st = ' ' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + for h in j: + st += h + str(j[h]) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + for t in k: + st += t + str(k[t]) + ' ' + if st != ' ': + sendmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + # print sendmsg + send_email(sendmsg) + while True: + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # date = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d") + H = now[9:11] + M = now[12:14] + S = now[15:] + # print H,S,M + print 'Start:'+'13:05' +' and 14:30 '+'send to email.'+"\n" +'please wait:' + + # print time.localtime() + # print time.strftime("%y-%m-%d %H:%M:%S",time.localtime()) + # xiaozhao = Xiaozhao() + # xiaozhao.send_email() + s.enter(1, 1, check_time, deb_print()) + s.run() + +if __name__=='__main__': + # itchat.auto_login(hotReload=True) + # itchat.run + # + # curTime = now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # buysell = one_predict.main_run() + # f = open("buysell.txt",'a') + # for i in buysell: + # # write_str = str(i) + '\n' + # # f.write(write_str) + # st = '' + # if i[1]['buy'] != []: + # st = u'买入点' + # for j in i[1]['buy']: + # st += str(j) + ' ' + # elif i[1]['sell'] != []: + # st += u' 卖出点' + # for k in i[1]['sell']: + # st += str(k) + ' ' + # if st != '': + # itchat.send(str(i[0]) + st, 'filehelper') + # itchat.send(str(i[0]) + st,toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + all_fund_list = main_zf() + main1() + # f.close() + # itchat.send("@fil@%s" % 'buysell.txt', 'filehelper') + # for (name, fund_id) in ids.items(): + # url = 'http://fund.eastmoney.com/%s.html' % fund_id + # value = spider(url) + # sign = value[0] + # value_num = value[1:-1] + # name = name.decode('utf-8') + # buysell=one_predict.main_run() + # itchat.send(buysell , 'filehelper') + # if(sign == '-' and float(value_num)>2.5): + # content = u'%s跌幅很大,可以补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') + # else: + # content = u'%s 不需要补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') diff --git a/trade_process/efund_mail2_LOCAL_5352.py b/trade_process/efund_mail2_LOCAL_5352.py new file mode 100644 index 0000000..454e2e8 --- /dev/null +++ b/trade_process/efund_mail2_LOCAL_5352.py @@ -0,0 +1,579 @@ +#!/usr/bin/python2.7 +# -*- coding: utf-8 -*- +# from url_info import * +# from spider import * +#import itchat +#from sleep import * +# import datetime +# import one_predict +import json,time +import sched + +import datetime +import re +# import sys +import urllib2 +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +from email.utils import formataddr +from email.mime.application import MIMEApplication +from fund_zf import main_zf +# from strategy.macd_back_test import macdmain +# from numpy import mean, ptp, var, std + +import requests +from bs4 import BeautifulSoup + + +def spider(url): + r = requests.get(url) + page = r.text + soup = BeautifulSoup(page, 'html.parser') + value = soup.find_all(id='gz_gszzl') + value = value[0].get_text().replace('%','') + value=value.encode('utf-8') + value1 = soup.find_all(id='gz_gsz') + value1 = value1[0].get_text().encode('utf-8') + try: + return [float(value1),float(value1),float(value)] + except ValueError as e: + return +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + +# 获取某一基金在某一日的累计净值数据 +def get_jingzhi(strfundcode, strdate,stredate): + try: + url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=' + str(strfundcode) + '&page=1&per=1000&sdate=' + str(strdate) + '&edate=' + str(stredate) + print u'数据链接:'+url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + return '-1' + + json_fund_value = response.read().decode('utf-8') + # print json_fund_value + + tr_re = re.compile(r'(.*?)') + item_re = re.compile( + r'''(\d{4}-\d{2}-\d{2})(.*?)(.*?)(.*?)(.*?)(.*?)''', + re.X) + + # 获取不到 返回0 + jingzhi ='-1' + result=[] + + for line in tr_re.findall(json_fund_value): + # print line + '\n' + match = item_re.match(line) + if match: + entry = match.groups() + entry[3].rstrip('%') + date = datetime.datetime.strptime(entry[0], '%Y-%m-%d') + # jingzhi = entry[2] + if entry[3]!='': + result.append([date, float(entry[1]),float(entry[2]), float(entry[3].rstrip('%'))]) + else: + result.append([date, float(entry[1]), float(entry[2]), 0]) + jingzhi1 = entry[1] + jingzhi2 = entry[2] + # print jingzhi2 + + if jingzhi2.strip() == '': + # 040028 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-01-06 1.4414 暂停申购 暂停赎回 + # 2017-01-05 1.4369 暂停申购 暂停赎回 + jingzhi = '-1' + elif jingzhi2.find('%') > -1: + # 040003 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-03-27 1.1149 3.9450% 限制大额申购 开放赎回 + # 2017-03-26* 2.2240 3.8970% 限制大额申购 开放赎回 + jingzhi = '-1' + elif float(jingzhi1) > float(jingzhi2): + # 502015 + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-27 0.6980 0.3785 -2.24% 场内买入 场内卖出 + # 2017-03-24 0.7140 0.3945 5.15% 场内买入 场内卖出 + jingzhi = entry[1] + else: + # + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-28 1.7720 1.7720 -0.23% 开放申购 开放赎回 + # 2017-03-27 1.7761 1.7761 -0.43% 开放申购 开放赎回 + jingzhi = entry[2] + return result + +#获取历史数据 +def get_histrydata(strfundcode,numdays): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print u'结束时间:' + strtoday + url = 'http://fund.eastmoney.com/%s.html' % strfundcode[0] + todayvalue = spider(url) + + # 昨天 + yestodaytime = tdatetime - datetime.timedelta(days=1) + yestoday = datetime.datetime.strftime(yestodaytime, '%Y-%m-%d') + + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=numdays) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print u'开始时间:' + strsdate + + # 1.1 起始时间 + strsdate = strsdate # sys.argv[1] + stredate = yestoday # sys.argv[2] + + # 今日零时 + # strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + # tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + # print tdatetime + + # 开始时间 如果是周六 周日 调整到周五 + # print strsdate + sdatetime = datetime.datetime.strptime(strsdate, '%Y-%m-%d') + sdatetime.isoweekday() + if sdatetime.isoweekday() == 7: + sdatetime = sdatetime + datetime.timedelta(days=-2) + elif sdatetime.isoweekday() == 6: + sdatetime = sdatetime + datetime.timedelta(days=-1) + + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + + # 结束时间 如果是周六 周日 调整到周五 + # print stredate + edatetime = datetime.datetime.strptime(stredate, '%Y-%m-%d') + edatetime.isoweekday() + if edatetime.isoweekday() == 7: + edatetime = edatetime + datetime.timedelta(days=-2) + elif edatetime.isoweekday() == 6: + edatetime = edatetime + datetime.timedelta(days=-1) + + stredate = datetime.datetime.strftime(edatetime, '%Y-%m-%d') + # print stredate + + # 判断时间段 今日净值要下午才出 一律不处理 + if edatetime <= sdatetime or tdatetime <= sdatetime or tdatetime <= edatetime: + print '判断时间段 今日净值要下午才出 一律不处理' + print 'date input error!\n' + + jingzhimin = get_jingzhi(strfundcode[0], strsdate, stredate) + if todayvalue != None: + jingzhimin.insert(0, [tdatetime, todayvalue[0], todayvalue[1], todayvalue[2]]) + return jingzhimin + +#计算交易策略 +def fenxi(strfundcode,numdays): + #获取历史数据 + jingzhimin=get_histrydata(strfundcode,numdays) + years = [x[0] for x in jingzhimin] + price = [x[1] for x in jingzhimin] + changeprice = [x[3]/x[1] for x in jingzhimin] + price_stre = [((x[1] - (sum(price)/len(price)))/(max(price)-min(price)))*(max(changeprice)-min(changeprice)) for x in jingzhimin] + # plt.plot(years, changeprice, 'g',label='change') + starty = [0 for x in jingzhimin] + jizhipoints=jizhi(jingzhimin) + celue_point=celue(jingzhimin,jizhipoints) + # change_fenxi(change5days) + return celue_point + +def stdDeviation(a): + l = len(a) + m = sum(a) / l + d = 0 + for i in a: d += (i - m) ** 2 + return (d * (1 / l)) ** 0.5 + +#统计 +# def caculate(data): +# # 极差 +# ptp(data) +# # 方差 +# var(data) +# # 标准差 +# std(data) +# # 变异系数 +# mean(data) / std(data) +# norm.ppf(0.05, mean(data), std(data)) + +#求极值 +def jizhi(funddata): + jizhipoints={} + alldata = [x[1] for x in funddata[::-2]] + jizhipoints['allmax']= [alldata.index(max(alldata)),max(alldata)] + jizhipoints['allmin']= [alldata.index(min(alldata)),min(alldata)] + data30days = [x[1] for x in funddata[:-30:-2]] + jizhipoints['30daysmax'] = [data30days.index(max(data30days)),max(data30days)] + jizhipoints['30daysmin'] = [data30days.index(min(data30days)),min(data30days)] + data180days = [x[1] for x in funddata[:-180:-2]] + jizhipoints['180daysmax'] = [data180days.index(max(data180days)), max(data180days)] + jizhipoints['180daysmin'] = [data180days.index(min(data180days)), min(data180days)] + data5days = [x[1] for x in funddata[:-5:-2]] + jizhipoints['5daysmax'] = [data5days.index(max(data5days)), max(data5days)] + jizhipoints['5daysmin'] = [data5days.index(min(data5days)), min(data5days)] + return jizhipoints + +#交易策略监测 +def celue(funddata,jizhipoints): + todaydata = funddata[0] + data5days = [x[1] for x in funddata[:6:1]] + change = [x[3] for x in funddata[:5:1]] + change7 = [x[3] for x in funddata[:7:1]] + change12days= [x[3] for x in funddata[:90:1]] + if stdDeviation(change12days)<0.3: + r=1.005;rmax=0.995 + elif stdDeviation(change12days) > 0.6: + r = 1.005;rmax = 0.995 + else: + r = 1.005;rmax = 0.995 + buy_points = [] + sell_point = [] + + #根据净值比较 + if(todaydata[1]<=r*jizhipoints['allmin'][1]): + buy_points.append({'today<1.02*allmin':str(todaydata[1])+str('<=')+str(r*jizhipoints['allmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['180daysmin'][1]): + buy_points.append({'today<1.02*180min': str(todaydata[1])+str('<=')+str(r*jizhipoints['180daysmin'][1])}) + # elif(todaydata[1]<=r*jizhipoints['30daysmin'][1]): + # buy_points.append({'today<1.02*30min': str(todaydata[1] )+str('<=')+str( r*jizhipoints['30daysmin'][1])}) + # elif (todaydata[1] <= r*jizhipoints['5daysmin'][1]): + # buy_points['today<1.02*5min'] = str(todaydata[1] )+str('<=')+str( r*jizhipoints['5daysmin'][1]) + #---------------------------- + elif (todaydata[1] >= rmax*jizhipoints['allmax'][1]): + sell_point.append({'today>0.98*allmax': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['allmax'][1])}) + elif (todaydata[1] >= rmax*jizhipoints['180daysmax'][1]): + sell_point.append({'today>0.98*180max': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['180daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['30daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['30daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['5daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['5daysmax'][1])}) + + # def change_fenxi(change): + if(sum(change)/len(change)>=0.46): + sell_point.append({'mean5up':round(sum(change)/len(change),5)}) + elif(sum(change)/len(change)<=-0.46): + buy_points.append({'mean5up':round(sum(change)/len(change),5)}) + + big=[];small=[] + if len(change)>3: + for i in range(len(change)): + if (change[i]>0): + big.append(change[i]) + elif (change[i]<0): + small.append(change[i]) + if len(big)>=4 and change[0]<0.2 : + sell_point.append({'go up 4days':change7}) + # elif (change[0]=3): + # sell_point.append({u'go up 4days': big}) + if (len(small)>=4 and change[0]>0) or (len(small)>=3 and change[0]<-0.5 and change[1]<0.1): + buy_points.append({'go down 3days':change7}) + return {'sell':sell_point,'buy':buy_points} + +def main_run(all_fund_list): + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + + buysell = [] + for i in code: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + for i in all_fund_list[0:50]: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + return buysell + +s = sched.scheduler(time.time, time.sleep) +class DateEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, datetime): + return obj.__str__() + return json.JSONEncoder.default(self, obj) + + # sleep() +#@itchat.msg_register(itchat.content.TEXT) +def print_content(msg): + print msg['Text'] +def readmsg(msg): + return msg +def send_email(text): + #text = self.claw_content() + #open('b.txt', 'w').write(str(text[1]) + '\n' + str(text[0]) + '\n') + username = 'lsl_cug@126.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + receiver = ['1627041882@qq.com','760140853@qq.com'] # '760140853@qq.com','xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com','1847725033@qq.com','849281511@qq.com' + if sender =='': + username = str(raw_input("Please Input Sender Email Address,for example:xxxxxxxxxx@126.com \n")) + sender = username + password = str(raw_input("Please Input Sender Password \n")) + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + iRec = 1 + while iRec>0: + CmdRec = ''#raw_input("Whether you want to add another Receiver Address(default n)? \n") + if CmdRec == 'y' or CmdRec == 'yes': + iRec = 1 + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + else: + iRec = 0 + + ConfirmRec = ''#raw_input("Confirm? \n") + if ConfirmRec == 'n' or ConfirmRec == 'no': + print("What Do You Want? Maybe run this program again.\n") + exit(1) + else: + for rece in receiver: + print("OK \n"+ username + " sendto " + rece) + # 创建一个带附件的实例 + msg = MIMEMultipart() + # msg = MIMEText(str(text), 'plain', 'utf-8') + msg['From'] = formataddr(['user', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + + subject_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + subject = '基金信息' + msg['Subject'] = subject + + # 邮件正文内容 + # print str(text[0]) + realText = text#sendmsg #str(text) #'\n'+str(subject_time)+':主人,有人来招人啦!^—^\n'+ '海投网:'+str(text[1])+'.'#+str(text[0])#'地大就业网招聘公告:'+str(text1[1])+'地大就业网gis等招聘信息:'+str(text2[1])+'.'#+str(text1[0])+'\n'+str(text2[1])+'\n'+str(text2[0]) + print realText + msg.attach(MIMEText(realText, 'plain', 'utf-8')) + + # 构造附件1,传送当前目录下的 test.txt 文件 + # att1 = MIMEApplication(open('b.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att1.add_header('Content-Disposition', 'attachment', filename='hjx.txt') + # msg.attach(att1) + # # 构造附件1,传送当前目录下的 test.txt 文件 + # att2 = MIMEApplication(open('b1.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att2.add_header('Content-Disposition', 'attachment', filename='b1.txt') + # msg.attach(att2) + # att3 = MIMEApplication(open('b2.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att3.add_header('Content-Disposition', 'attachment', filename='b2.txt') + # msg.attach(att3) + smtpserver = 'smtp.126.com' + try: + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e: + print(u"Error: 无法发送邮件:" + str(e)) + smtp.quit() + try: + username = 'lishulincug@163.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['lishulin', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.163.com' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + for jj in receiver: + smtp.sendmail(sender, jj, msg.as_string()) + time.sleep(35) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e1: + print(u"Error: 无法发送邮件:"+str(e1)) + smtp.quit() + try: + username = '15623863340@sina.cn' # input("请输入账号:") + password = '133499' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['15623863340@sina.cn', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.sina.cn' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e2: + print(u"Error: 无法发送邮件:" + str(e2)) + smtp.quit() +def deb_print(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H=now[9:11] + M = now[12:14] + S = now[15:] + # print now + print H,M, S + return H,M, S + +def check_time(H, M,S): + strtoday1 = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + sdatetime = datetime.datetime.strptime(strtoday1, '%Y-%m-%d') + sdatetime.isoweekday() + #if sdatetime.isoweekday() == 7: + if(H == "14" and int(M) == 30 and S == "20")and(sdatetime.isoweekday() != 7)and(sdatetime.isoweekday() != 6):#(H == "14" and M == "08" and S == "10") or + # itchat.auto_login(hotReload=True) + # itchat.run + # curTime = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # itchat.send(str(curTime), toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + buysell = main_run(all_fund_list) + print(str(buysell)) + sendmsg=[] + # f = open("buysell.txt",'a') + for i in buysell: + # write_str = str(i) + '\n' + # f.write(write_str) + st = '' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + st += str(j) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + st += str(k) + ' ' + if st != '': + sendmsg.append(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +(' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm '%i[0][0])) + send_email(sendmsg) + # itchat.send(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +('-- http://www.efunds.com.cn/html/fund/%s_fundinfo.htm'%i[0][0]), 'filehelper') + # itchat.send(str(i[0]) + st, toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + s.enter(1, 1, check_time, deb_print()) + + +def main1(sign): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H = now[9:11] + M = now[12:14] + S = now[15:] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + all_fund_list = main_zf() + #sign=macdmain(code) + if (int(H)): # >= 19(H == "14" and M == "08" and S == "10") or + buysell1 = main_run(all_fund_list) + print(str(buysell1)) + sendmsg = '' + # f = open("buysell.txt",'a') + for j in sign: + #sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+'\n' + sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+','+ (' http://fund.eastmoney.com/%s.html' % j[0][0])+'\n' + for i in buysell1: + # write_str = str(i) + '\n' + # f.write(write_str) + st = ' ' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + for h in j: + st += h + str(j[h]) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + for t in k: + st += t + str(k[t]) + ' ' + if st != ' ': + sendmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + # print sendmsg + send_email(sendmsg) + while True: + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # date = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d") + H = now[9:11] + M = now[12:14] + S = now[15:] + # print H,S,M + print 'Start:'+'13:05' +' and 14:30 '+'send to email.'+"\n" +'please wait:' + + # print time.localtime() + # print time.strftime("%y-%m-%d %H:%M:%S",time.localtime()) + # xiaozhao = Xiaozhao() + # xiaozhao.send_email() + s.enter(1, 1, check_time, deb_print()) + s.run() + +if __name__=='__main__': + # itchat.auto_login(hotReload=True) + # itchat.run + # + # curTime = now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # buysell = one_predict.main_run() + # f = open("buysell.txt",'a') + # for i in buysell: + # # write_str = str(i) + '\n' + # # f.write(write_str) + # st = '' + # if i[1]['buy'] != []: + # st = u'买入点' + # for j in i[1]['buy']: + # st += str(j) + ' ' + # elif i[1]['sell'] != []: + # st += u' 卖出点' + # for k in i[1]['sell']: + # st += str(k) + ' ' + # if st != '': + # itchat.send(str(i[0]) + st, 'filehelper') + # itchat.send(str(i[0]) + st,toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + all_fund_list = main_zf() + main1() + # f.close() + # itchat.send("@fil@%s" % 'buysell.txt', 'filehelper') + # for (name, fund_id) in ids.items(): + # url = 'http://fund.eastmoney.com/%s.html' % fund_id + # value = spider(url) + # sign = value[0] + # value_num = value[1:-1] + # name = name.decode('utf-8') + # buysell=one_predict.main_run() + # itchat.send(buysell , 'filehelper') + # if(sign == '-' and float(value_num)>2.5): + # content = u'%s跌幅很大,可以补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') + # else: + # content = u'%s 不需要补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') diff --git a/trade_process/efund_mail2_REMOTE_5352.py b/trade_process/efund_mail2_REMOTE_5352.py new file mode 100644 index 0000000..a661f98 --- /dev/null +++ b/trade_process/efund_mail2_REMOTE_5352.py @@ -0,0 +1,578 @@ +#!/usr/bin/python2.7 +# -*- coding: utf-8 -*- +# from url_info import * +# from spider import * +#import itchat +#from sleep import * +# import datetime +# import one_predict +import json,time +import sched + +import datetime +import re +# import sys +import urllib2 +import smtplib +from email.mime.text import MIMEText +from email.mime.multipart import MIMEMultipart +from email.utils import formataddr +from email.mime.application import MIMEApplication +from fund_zf import main_zf +from trade_process.strategy.macd_back_test import macdmain +# from numpy import mean, ptp, var, std + +import requests +from bs4 import BeautifulSoup + + +def spider(url): + r = requests.get(url) + page = r.text + soup = BeautifulSoup(page, 'html.parser') + value = soup.find_all(id='gz_gszzl') + value = value[0].get_text().replace('%','') + value=value.encode('utf-8') + value1 = soup.find_all(id='gz_gsz') + value1 = value1[0].get_text().encode('utf-8') + try: + return [float(value1),float(value1),float(value)] + except ValueError as e: + return +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + +# 获取某一基金在某一日的累计净值数据 +def get_jingzhi(strfundcode, strdate,stredate): + try: + url = 'http://fund.eastmoney.com/f10/F10DataApi.aspx?type=lsjz&code=' + str(strfundcode) + '&page=1&per=1000&sdate=' + str(strdate) + '&edate=' + str(stredate) + print u'数据链接:'+url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + return '-1' + + json_fund_value = response.read().decode('utf-8') + # print json_fund_value + + tr_re = re.compile(r'(.*?)') + item_re = re.compile( + r'''(\d{4}-\d{2}-\d{2})(.*?)(.*?)(.*?)(.*?)(.*?)''', + re.X) + + # 获取不到 返回0 + jingzhi ='-1' + result=[] + + for line in tr_re.findall(json_fund_value): + # print line + '\n' + match = item_re.match(line) + if match: + entry = match.groups() + entry[3].rstrip('%') + date = datetime.datetime.strptime(entry[0], '%Y-%m-%d') + # jingzhi = entry[2] + if entry[3]!='': + result.append([date, float(entry[1]),float(entry[2]), float(entry[3].rstrip('%'))]) + else: + result.append([date, float(entry[1]), float(entry[2]), 0]) + jingzhi1 = entry[1] + jingzhi2 = entry[2] + # print jingzhi2 + + if jingzhi2.strip() == '': + # 040028 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-01-06 1.4414 暂停申购 暂停赎回 + # 2017-01-05 1.4369 暂停申购 暂停赎回 + jingzhi = '-1' + elif jingzhi2.find('%') > -1: + # 040003 + # 净值日期 每万份收益 7日年化收益率(%) 申购状态 赎回状态 分红送配 + # 2017-03-27 1.1149 3.9450% 限制大额申购 开放赎回 + # 2017-03-26* 2.2240 3.8970% 限制大额申购 开放赎回 + jingzhi = '-1' + elif float(jingzhi1) > float(jingzhi2): + # 502015 + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-27 0.6980 0.3785 -2.24% 场内买入 场内卖出 + # 2017-03-24 0.7140 0.3945 5.15% 场内买入 场内卖出 + jingzhi = entry[1] + else: + # + # 净值日期 单位净值 累计净值 日增长率 申购状态 赎回状态 分红送配 + # 2017-03-28 1.7720 1.7720 -0.23% 开放申购 开放赎回 + # 2017-03-27 1.7761 1.7761 -0.43% 开放申购 开放赎回 + jingzhi = entry[2] + return result + +#获取历史数据 +def get_histrydata(strfundcode,numdays): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print u'结束时间:' + strtoday + url = 'http://fund.eastmoney.com/%s.html' % strfundcode[0] + todayvalue = spider(url) + + # 昨天 + yestodaytime = tdatetime - datetime.timedelta(days=1) + yestoday = datetime.datetime.strftime(yestodaytime, '%Y-%m-%d') + + # 前年今日 + sdatetime = tdatetime - datetime.timedelta(days=numdays) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print u'开始时间:' + strsdate + + # 1.1 起始时间 + strsdate = strsdate # sys.argv[1] + stredate = yestoday # sys.argv[2] + + # 今日零时 + # strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + # tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + # print tdatetime + + # 开始时间 如果是周六 周日 调整到周五 + # print strsdate + sdatetime = datetime.datetime.strptime(strsdate, '%Y-%m-%d') + sdatetime.isoweekday() + if sdatetime.isoweekday() == 7: + sdatetime = sdatetime + datetime.timedelta(days=-2) + elif sdatetime.isoweekday() == 6: + sdatetime = sdatetime + datetime.timedelta(days=-1) + + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + + # 结束时间 如果是周六 周日 调整到周五 + # print stredate + edatetime = datetime.datetime.strptime(stredate, '%Y-%m-%d') + edatetime.isoweekday() + if edatetime.isoweekday() == 7: + edatetime = edatetime + datetime.timedelta(days=-2) + elif edatetime.isoweekday() == 6: + edatetime = edatetime + datetime.timedelta(days=-1) + + stredate = datetime.datetime.strftime(edatetime, '%Y-%m-%d') + # print stredate + + # 判断时间段 今日净值要下午才出 一律不处理 + if edatetime <= sdatetime or tdatetime <= sdatetime or tdatetime <= edatetime: + print '判断时间段 今日净值要下午才出 一律不处理' + print 'date input error!\n' + + jingzhimin = get_jingzhi(strfundcode[0], strsdate, stredate) + if todayvalue != None: + jingzhimin.insert(0, [tdatetime, todayvalue[0], todayvalue[1], todayvalue[2]]) + return jingzhimin + +#计算交易策略 +def fenxi(strfundcode,numdays): + #获取历史数据 + jingzhimin=get_histrydata(strfundcode,numdays) + years = [x[0] for x in jingzhimin] + price = [x[1] for x in jingzhimin] + changeprice = [x[3]/x[1] for x in jingzhimin] + price_stre = [((x[1] - (sum(price)/len(price)))/(max(price)-min(price)))*(max(changeprice)-min(changeprice)) for x in jingzhimin] + # plt.plot(years, changeprice, 'g',label='change') + starty = [0 for x in jingzhimin] + jizhipoints=jizhi(jingzhimin) + celue_point=celue(jingzhimin,jizhipoints) + # change_fenxi(change5days) + return celue_point + +def stdDeviation(a): + l = len(a) + m = sum(a) / l + d = 0 + for i in a: d += (i - m) ** 2 + return (d * (1 / l)) ** 0.5 + +#统计 +# def caculate(data): +# # 极差 +# ptp(data) +# # 方差 +# var(data) +# # 标准差 +# std(data) +# # 变异系数 +# mean(data) / std(data) +# norm.ppf(0.05, mean(data), std(data)) + +#求极值 +def jizhi(funddata): + jizhipoints={} + alldata = [x[1] for x in funddata[::-2]] + jizhipoints['allmax']= [alldata.index(max(alldata)),max(alldata)] + jizhipoints['allmin']= [alldata.index(min(alldata)),min(alldata)] + data30days = [x[1] for x in funddata[:-30:-2]] + jizhipoints['30daysmax'] = [data30days.index(max(data30days)),max(data30days)] + jizhipoints['30daysmin'] = [data30days.index(min(data30days)),min(data30days)] + data180days = [x[1] for x in funddata[:-180:-2]] + jizhipoints['180daysmax'] = [data180days.index(max(data180days)), max(data180days)] + jizhipoints['180daysmin'] = [data180days.index(min(data180days)), min(data180days)] + data5days = [x[1] for x in funddata[:-5:-2]] + jizhipoints['5daysmax'] = [data5days.index(max(data5days)), max(data5days)] + jizhipoints['5daysmin'] = [data5days.index(min(data5days)), min(data5days)] + return jizhipoints + +#交易策略监测 +def celue(funddata,jizhipoints): + todaydata = funddata[0] + data5days = [x[1] for x in funddata[:6:1]] + change = [x[3] for x in funddata[:5:1]] + change7 = [x[3] for x in funddata[:7:1]] + change12days= [x[3] for x in funddata[:90:1]] + if stdDeviation(change12days)<0.3: + r=1.005;rmax=0.995 + elif stdDeviation(change12days) > 0.6: + r = 1.005;rmax = 0.995 + else: + r = 1.005;rmax = 0.995 + buy_points = [] + sell_point = [] + + #根据净值比较 + if(todaydata[1]<=r*jizhipoints['allmin'][1]): + buy_points.append({'today<1.02*allmin':str(todaydata[1])+str('<=')+str(r*jizhipoints['allmin'][1])}) + elif(todaydata[1]<=r*jizhipoints['180daysmin'][1]): + buy_points.append({'today<1.02*180min': str(todaydata[1])+str('<=')+str(r*jizhipoints['180daysmin'][1])}) + # elif(todaydata[1]<=r*jizhipoints['30daysmin'][1]): + # buy_points.append({'today<1.02*30min': str(todaydata[1] )+str('<=')+str( r*jizhipoints['30daysmin'][1])}) + # elif (todaydata[1] <= r*jizhipoints['5daysmin'][1]): + # buy_points['today<1.02*5min'] = str(todaydata[1] )+str('<=')+str( r*jizhipoints['5daysmin'][1]) + #---------------------------- + elif (todaydata[1] >= rmax*jizhipoints['allmax'][1]): + sell_point.append({'today>0.98*allmax': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['allmax'][1])}) + elif (todaydata[1] >= rmax*jizhipoints['180daysmax'][1]): + sell_point.append({'today>0.98*180max': str(todaydata[1] )+str('>=')+str( rmax*jizhipoints['180daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['30daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['30daysmax'][1])}) + # elif (todaydata[1] >= rmax*jizhipoints['5daysmax'][1]): + # sell_point.append({'today>0.9*30max': str(todaydata[1] )+str('<=')+str( rmax*jizhipoints['5daysmax'][1])}) + + # def change_fenxi(change): + if(sum(change)/len(change)>=0.46): + sell_point.append({'mean5up':round(sum(change)/len(change),5)}) + elif(sum(change)/len(change)<=-0.46): + buy_points.append({'mean5up':round(sum(change)/len(change),5)}) + + big=[];small=[] + if len(change)>3: + for i in range(len(change)): + if (change[i]>0): + big.append(change[i]) + elif (change[i]<0): + small.append(change[i]) + if len(big)>=4 and change[0]<0.2 : + sell_point.append({'go up 4days':change7}) + # elif (change[0]=3): + # sell_point.append({u'go up 4days': big}) + if (len(small)>=4 and change[0]>0) or (len(small)>=3 and change[0]<-0.5 and change[1]<0.1): + buy_points.append({'go down 3days':change7}) + return {'sell':sell_point,'buy':buy_points} + +def main_run(all_fund_list): + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + + buysell = [] + for i in code: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + for i in all_fund_list[0:50]: + # save(strfundcode=i ,numdays=365*1) + sb=fenxi(strfundcode=i, numdays=365 * 1) + if sb: + buysell.append([i,sb]) + return buysell + +s = sched.scheduler(time.time, time.sleep) +class DateEncoder(json.JSONEncoder): + def default(self, obj): + if isinstance(obj, datetime): + return obj.__str__() + return json.JSONEncoder.default(self, obj) + + # sleep() +#@itchat.msg_register(itchat.content.TEXT) +def print_content(msg): + print msg['Text'] +def readmsg(msg): + return msg +def send_email(text): + #text = self.claw_content() + #open('b.txt', 'w').write(str(text[1]) + '\n' + str(text[0]) + '\n') + username = 'lsl_cug@126.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + receiver = ['1627041882@qq.com','760140853@qq.com'] # '760140853@qq.com','xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com','1847725033@qq.com','849281511@qq.com' + if sender =='': + username = str(raw_input("Please Input Sender Email Address,for example:xxxxxxxxxx@126.com \n")) + sender = username + password = str(raw_input("Please Input Sender Password \n")) + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + iRec = 1 + while iRec>0: + CmdRec = ''#raw_input("Whether you want to add another Receiver Address(default n)? \n") + if CmdRec == 'y' or CmdRec == 'yes': + iRec = 1 + receiver.append(str(raw_input("Please Input Receiver Address,for example:xxxxxxxxxx@qq.com \n"))) + else: + iRec = 0 + + ConfirmRec = ''#raw_input("Confirm? \n") + if ConfirmRec == 'n' or ConfirmRec == 'no': + print("What Do You Want? Maybe run this program again.\n") + exit(1) + else: + for rece in receiver: + print("OK \n"+ username + " sendto " + rece) + # 创建一个带附件的实例 + msg = MIMEMultipart() + # msg = MIMEText(str(text), 'plain', 'utf-8') + msg['From'] = formataddr(['user', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + + subject_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S') + subject = '基金信息' + msg['Subject'] = subject + + # 邮件正文内容 + # print str(text[0]) + realText = text#sendmsg #str(text) #'\n'+str(subject_time)+':主人,有人来招人啦!^—^\n'+ '海投网:'+str(text[1])+'.'#+str(text[0])#'地大就业网招聘公告:'+str(text1[1])+'地大就业网gis等招聘信息:'+str(text2[1])+'.'#+str(text1[0])+'\n'+str(text2[1])+'\n'+str(text2[0]) + print realText + msg.attach(MIMEText(realText, 'plain', 'utf-8')) + + # 构造附件1,传送当前目录下的 test.txt 文件 + # att1 = MIMEApplication(open('b.txt', 'rb').read()) + # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att1.add_header('Content-Disposition', 'attachment', filename='hjx.txt') + # msg.attach(att1) + # # 构造附件1,传送当前目录下的 test.txt 文件 + # att2 = MIMEApplication(open('b1.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att2.add_header('Content-Disposition', 'attachment', filename='b1.txt') + # msg.attach(att2) + # att3 = MIMEApplication(open('b2.txt', 'rb').read()) + # # 这里的filename可以任意写,写什么名字,邮件中显示什么名字 + # att3.add_header('Content-Disposition', 'attachment', filename='b2.txt') + # msg.attach(att3) + smtpserver = 'smtp.126.com' + try: + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e: + print(u"Error: 无法发送邮件:" + str(e)) + smtp.quit() + try: + username = 'lishulincug@163.com' # input("请输入账号:") + password = '123456lsl' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['lishulin', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.163.com' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + for jj in receiver: + smtp.sendmail(sender, jj, msg.as_string()) + time.sleep(35) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e1: + print(u"Error: 无法发送邮件:"+str(e1)) + smtp.quit() + try: + username = '15623863340@sina.cn' # input("请输入账号:") + password = '133499' # input("请输入密码:") + sender = username + # sender='' + # receiver = [ '1627041882@qq.com','994992333@qq.com','1847725033@qq.com'] # 'xxxxxxxxxx@qq.com','xxxxxxxxxx@126.com','994992333@qq.com','1847725033@qq.com' + msg['From'] = formataddr(['15623863340@sina.cn', sender]) # 括号里的对应发件人邮箱昵称、发件人邮箱账号 + msg['To'] = ",".join(receiver) # 括号里的对应收件人邮箱昵称、收件人邮箱账号 + smtpserver = 'smtp.sina.cn' + smtp = smtplib.SMTP(smtpserver,25) + smtp.starttls() + smtp.login(username, password) + smtp.sendmail(sender, receiver, msg.as_string()) + smtp.quit() + print(u"邮件发送成功") + except smtplib.SMTPException, e2: + print(u"Error: 无法发送邮件:" + str(e2)) + smtp.quit() +def deb_print(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H=now[9:11] + M = now[12:14] + S = now[15:] + # print now + print H,M, S + return H,M, S + +def check_time(H, M,S): + strtoday1 = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + sdatetime = datetime.datetime.strptime(strtoday1, '%Y-%m-%d') + sdatetime.isoweekday() + #if sdatetime.isoweekday() == 7: + if(H == "14" and int(M) == 30 and S == "20")and(sdatetime.isoweekday() != 7)and(sdatetime.isoweekday() != 6):#(H == "14" and M == "08" and S == "10") or + # itchat.auto_login(hotReload=True) + # itchat.run + # curTime = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # itchat.send(str(curTime), toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + buysell = main_run(all_fund_list) + print(str(buysell)) + sendmsg=[] + # f = open("buysell.txt",'a') + for i in buysell: + # write_str = str(i) + '\n' + # f.write(write_str) + st = '' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + st += str(j) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + st += str(k) + ' ' + if st != '': + sendmsg.append(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +(' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm '%i[0][0])) + send_email(sendmsg) + # itchat.send(str(i[0]) + st+(' http://fund.eastmoney.com/%s.html'%i[0][0]) +('-- http://www.efunds.com.cn/html/fund/%s_fundinfo.htm'%i[0][0]), 'filehelper') + # itchat.send(str(i[0]) + st, toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + s.enter(1, 1, check_time, deb_print()) + + +def main1(): + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + H = now[9:11] + M = now[12:14] + S = now[15:] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + all_fund_list = main_zf(code) + sign=macdmain(code) + if (int(H)): # >= 19(H == "14" and M == "08" and S == "10") or + buysell1 = main_run(all_fund_list) + print(str(buysell1)) + sendmsg = '' + # f = open("buysell.txt",'a') + for j in sign: + sendmsg +=str(j[0])+','+str(j[1])+','+str(j[2][0])+','+str(j[2][1][0])+','+ (' http://fund.eastmoney.com/%s.html' % j[0][0])+'\n' + for i in buysell1: + # write_str = str(i) + '\n' + # f.write(write_str) + st = ' ' + if i[1]['buy'] != []: + st = ' 买 ' + for j in i[1]['buy']: + for h in j: + st += h + str(j[h]) + ' ' + elif i[1]['sell'] != []: + st += ' 卖 ' + for k in i[1]['sell']: + for t in k: + st += t + str(k[t]) + ' ' + if st != ' ': + sendmsg += i[0][0] + ',' + i[0][1] + st + (' http://fund.eastmoney.com/%s.html' % i[0][0]) + ( + ' http://www.efunds.com.cn/html/fund/%s_fundinfo.htm' % i[0][0]) + '\n' + # print sendmsg + send_email(sendmsg) + while True: + now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # date = datetime.datetime.strftime(datetime.datetime.now(), "%Y%m%d") + H = now[9:11] + M = now[12:14] + S = now[15:] + # print H,S,M + print 'Start:'+'13:05' +' and 14:30 '+'send to email.'+"\n" +'please wait:' + + # print time.localtime() + # print time.strftime("%y-%m-%d %H:%M:%S",time.localtime()) + # xiaozhao = Xiaozhao() + # xiaozhao.send_email() + s.enter(1, 1, check_time, deb_print()) + s.run() + +if __name__=='__main__': + # itchat.auto_login(hotReload=True) + # itchat.run + # + # curTime = now = time.strftime("%y-%m-%d %H:%M:%S", time.localtime()) + # itchat.send(curTime, 'filehelper') + # buysell = one_predict.main_run() + # f = open("buysell.txt",'a') + # for i in buysell: + # # write_str = str(i) + '\n' + # # f.write(write_str) + # st = '' + # if i[1]['buy'] != []: + # st = u'买入点' + # for j in i[1]['buy']: + # st += str(j) + ' ' + # elif i[1]['sell'] != []: + # st += u' 卖出点' + # for k in i[1]['sell']: + # st += str(k) + ' ' + # if st != '': + # itchat.send(str(i[0]) + st, 'filehelper') + # itchat.send(str(i[0]) + st,toUserName='@9f545f6d5c3f89aa63956c3f386733232f7176569f71a26f477909c02828d735') + all_fund_list = main_zf() + main1() + # f.close() + # itchat.send("@fil@%s" % 'buysell.txt', 'filehelper') + # for (name, fund_id) in ids.items(): + # url = 'http://fund.eastmoney.com/%s.html' % fund_id + # value = spider(url) + # sign = value[0] + # value_num = value[1:-1] + # name = name.decode('utf-8') + # buysell=one_predict.main_run() + # itchat.send(buysell , 'filehelper') + # if(sign == '-' and float(value_num)>2.5): + # content = u'%s跌幅很大,可以补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') + # else: + # content = u'%s 不需要补仓'+sign+value_num + # itchat.send(content % name, 'filehelper') diff --git a/trade_process/fibonacci.py b/trade_process/fibonacci.py index bca4f75..8589329 100644 --- a/trade_process/fibonacci.py +++ b/trade_process/fibonacci.py @@ -1,17 +1,17 @@ -#coding:utf8 - -import tushare as ts -import data_process.data_get as dg - -def fibonacci(): - df_gem = ts.get_gem_classified() #创业板 - - for ix, row in df_gem.iterrows(): - code = row['code'] - df_price = dg.get_stock_k_line(code, date_start='2015-01-04') - print df_price.head() - returns = df_price['close'].pct_change() - returns[0] = 0 - print returns - +#coding:utf8 + +import tushare as ts +import data_process.data_get as dg + +def fibonacci(): + df_gem = ts.get_gem_classified() #创业板 + + for ix, row in df_gem.iterrows(): + code = row['code'] + df_price = dg.get_stock_k_line(code, date_start='2015-01-04') + print df_price.head() + returns = df_price['close'].pct_change() + returns[0] = 0 + print returns + fibonacci() \ No newline at end of file diff --git a/trade_process/fund_zf.py b/trade_process/fund_zf.py new file mode 100644 index 0000000..34cd54e --- /dev/null +++ b/trade_process/fund_zf.py @@ -0,0 +1,313 @@ +# !/usr/bin/python +# -*- coding: utf-8 -*- +import datetime +import glob +import json +import sys +import urllib2 +reload(sys) +sys.setdefaultencoding('utf-8') + + +# 是否已在list中 +def get_index(fund_code, all_fund_list): + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if fund_code in all_fund_list[fund_index]: + break; + fund_index += 1 + + return fund_index + + +# 获取基金类型 +def get_type(fund_code, all_fund_list): + fund_type = 'none' + for fund in all_fund_list: + if fund_code in fund: + fund_type = fund[3] + break + + return fund_type + + +def main_zf(fund): + # 当前日期 + strtoday = datetime.datetime.strftime(datetime.datetime.now(), '%Y-%m-%d') + tdatetime = datetime.datetime.strptime(strtoday, '%Y-%m-%d') + print strtoday + + # 过去20天日期 + s20datetime = tdatetime - datetime.timedelta(days=40) + strs20date = datetime.datetime.strftime(s20datetime, '%Y-%m-%d') + + # 去年今日 + sdatetime = tdatetime - datetime.timedelta(days=365) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + print strsdate + + # 获取所有基金列表 用于查询类型 + all_fund = [] + fundlist_files = glob.glob('./trade_process/fundlist-*.txt') + file_object = open(fundlist_files[0], 'r') + try: + all_funds_txt = file_object.read() + # print all_funds_txt + finally: + file_object.close() + + all_funds_txt = all_funds_txt[all_funds_txt.find('=') + 2:all_funds_txt.rfind(';')] + all_fund = json.loads(all_funds_txt.decode('utf-8')) + + # 1、 获取近 1 3 6 增长率top50 + + month_num = 1 + month_list = [1,36] + all_fund_list = [] + dx='1' + ft=['all','hh','qdii','zq','zs'] #基金类型 + ftk=ft[0] + for int_month in month_list: + try: + if fund =='gf' or fund =='efund': + if fund == 'gf': + # 广发排行 + fundcode='80000248' + elif fund == 'efund': + fundcode = '80000229' + if int_month/12 >= 1 : + url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp='+fundcode+'&sc='+str(int_month)+'n&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0' + elif int_month == 0.25: + url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp='+fundcode+'&sc=z&st=asc&pi=1&pn=80&zf=diy&sh=list&rnd=' + else: + url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp='+fundcode+'&sc='+str(int_month)+'y&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=' + # 易方达1周排行 + # elif fund == 'efund': + # if int_month / 12 >= 1: + # url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000229&sc=z&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.8037251392454077' + # elif int_month == 0.25: + # # 易方达6月排行 + # url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000229&sc=6y&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.2738232363825983' + # else: + # url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000229&sc=6y&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.2738232363825983' + else: + if int_month/12 >= 1: + # 1年增幅 + print ('get nearly %s year top 200 funds',int_month/12) + url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=1nzf,100&gs=0&sc='+str(int_month/12)+'nzf&st=desc&sd=' + \ + strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + # elif int_month == 12: + # # 1年增幅 + # print 'get nearly 1 year top 200 funds' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=1nzf,100&gs=0&sc=1nzf&st=desc&sd=' + \ + # strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + # elif int_month == 36: + # # 1年增幅 + # print 'get nearly 3 year top 200 funds' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=1nzf,100&gs=0&sc=3nzf&st=desc&sd=' + \ + # strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + # elif int_month == 60: + # # 1年增幅 + # print 'get nearly 1 year top 200 funds' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=1nzf,100&gs=0&sc=5nzf&st=desc&sd=' + \ + # strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + elif int_month == 0.25: + # 1年增幅 + print 'get nearly 1 week down 200 funds' + url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&sc=z&st=asc&pi=1&pn=300&zf=diy&sh=list&rnd=' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=zzf,100&gs=0&sc=zzf&st=dasc&sd=' + \ + # strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + elif int_month == 1: + print 'get nearly ' + str(int_month) + ' months down 200 funds' + url = 'http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&sc=1y&st=desc&pi=1&pn=300&zf=diy&sh=list&rnd=' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=' + str(int_month) + \ + # 'yzf,200&gs=0&sc=' + str(int_month) + 'yzf&st=dasc&sd=' + strsdate + '&ed=' + strs20date + \ + # '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx=' + dx + else: + # 前 n 月增幅 + print 'get nearly ' + str(int_month) + ' months top 200 funds' + url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft='+ftk+'&rs=' + str(int_month) + \ + 'yzf,200&gs=0&sc=' + str(int_month) + 'yzf&st=desc&sd=' + strsdate + '&ed=' + strs20date + \ + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx='+dx + print url + '\n' + + # if int_month == 24: + # 1年增幅 + # 过去20天日期 + s20datetime = tdatetime - datetime.timedelta(days=10) + strs20date = datetime.datetime.strftime(s20datetime, '%Y-%m-%d') + + # 去年今日 + sdatetime = s20datetime - datetime.timedelta(days=int_month*30) + strsdate = datetime.datetime.strftime(sdatetime, '%Y-%m-%d') + # print strsdate + # print 'get nearly ' + str(int_month) + ' months top 200 funds' + # url = 'http://fund.eastmoney.com/data/rankhandler.aspx?op=ph&dt=kf&ft=all,50&gs=0&st=desc&sd=' + \ + # strsdate + '&ed=' + strs20date + '&qdii=&tabSubtype=,,,,,&pi=1&pn=200&dx=1' + # print url + '\n' + response = urllib2.urlopen(url) + except urllib2.HTTPError, e: + print e + urllib_error_tag = True + except StandardError, e: + print e + urllib_error_tag = True + else: + urllib_error_tag = False + + if urllib_error_tag == True: + print 'error to get date,check network!\n' + sys.exit(1) + + # print response + all_rank_txt = response.read().decode('utf-8') + all_rank_txt = all_rank_txt[all_rank_txt.find('["'):all_rank_txt.rfind('"]') + 2] + # print all_rank_txt + # 编码问题 NND utf-8 不行啊 + all_rank_list = json.loads(all_rank_txt) + # print 'rank sum:' + str(len(all_rank_list)) + '\n\n' + + fund_rank = 1 + for rank_txt in all_rank_list: + # print rank_txt + '\n' + # 0 1 2 3 4 5 5 6 7 8 8 10 11 12 13 + # 单位 累计 日增 近1 近2 近3 今年 + # 基金代码 基金简称 日期 净值 净值 长率 周 近1月 近3月 近6月 近1年 年 年 来 成立来 手续费 + # 002425,金鹰保本混合C,JYBBHHC,2017-03-28,1.1120,1.6120,0,0.09,-0.4477,0.6335,0.5082,61.5167,,,0.09,61.5167,2016-03-07,1,61.5167,1.00%,0.10%,1,0.10%,1, + # 002441,德邦新添利债券C,DBXTLZQC,2017-03-28,1.1365,1.5165,0.0264,0.1409,0.4241,1.2923,1.1904,50.4788,,,1.1571,50.8371,2016-02-17,1,50.4788,,0.00%,,,, + # 共25项 + rank_list = rank_txt.split(',') + # print str(len(rank_list)) + '\n' + # 如果是第1个月 直接append + if 1 == month_num: + fund_list = [] + + fund_type = get_type(rank_list[0], all_fund) + + fund_list.append(rank_list[0]) + fund_list.append(rank_list[1] + '\t' + fund_type) + fund_list.append(str(fund_rank)) + + all_fund_list.append(fund_list) + else: + # 查找是否已在list中 + fund_num = len(all_fund_list) + fund_index = get_index(rank_list[0], all_fund_list) + if fund_index < fund_num: + # list中已存在 只append rank 和 rate + # print fund_code + '\t' + str(fund_index) + '\t' + str(all_fund_list[fund_index]) + all_fund_list[fund_index].append(str(fund_rank)) + else: + # 如果不存在 不仅需要将其加入list中 同样需要将其他几个 rank 和 rate 补上 + # 如果本fundcode在前几个文件中不存在 就是倒数第一 第100名吧 rank 默认100 rate 默认0 + # print fund_code + '\tnot found!' + fund_list = [] + # code name type + fund_type = get_type(rank_list[0], all_fund) + + fund_list.append(rank_list[0]) + fund_list.append(rank_list[1] + '\t' + fund_type) + # 补上 前几个文件的 rank 和 rate + for i in range(month_num - 1): + fund_list.append('100') + # 加上当前的rank 和 rate + fund_list.append(str(fund_rank)) + + # 将其加入列表 + all_fund_list.append(fund_list) + + # 处理下一个 + fund_rank += 1 + + # 还有 从第2个月开始 如果有fund 不在本文件中出现 就是倒数第一 第100名吧 还要将rank 和 rate 补上 擦 挺复杂 + if month_num > 1: + # 最长的len 为 2 + month_num + fund_len = 2 + month_num + fund_num = len(all_fund_list) + fund_index = 0 + while fund_index < fund_num: + if len(all_fund_list[fund_index]) < fund_len: + all_fund_list[fund_index].append('100') + + fund_index += 1 + + # 处理下一个月 + month_num += 1 + + print month_num + s1 = [] + for j in range(0, 3): + s='' + for i in range(0, len(all_fund_list[j])): + s += str(all_fund_list[j][i]) + ', ' + s1.append(s) + for j in range(0, 3): + print s1[j] + # print all_fund_list[0] + # print all_fund_list[1] + + # 2、计算平均排名 + fund_num = len(all_fund_list) + print fund_num + print '\n\n' + fund_index = 0 + while fund_index < fund_num: + sum_rank = 0 + # 有几个文件 就有几个排名 rank的index 2 3 4 5 + for i in range(month_num - 1): + sum_rank += int(all_fund_list[fund_index][2 + i]) + + # 计算平均排名 + avg_rank = float('%.2f' % (float(sum_rank) / (month_num - 1))) + + # 加入avg_rank + all_fund_list[fund_index].append(avg_rank) + + # 处理下一个 + fund_index += 1 + + # 3、排序 写文件 打印 + # avg_rank的index 1 + month_num + all_fund_list.sort(key=lambda fund: fund[1 + month_num]) + + s2=[] + for j in range(0,3): + s='' + for i in range(0,len(all_fund_list[j])): + s+= str(all_fund_list[j][i])+', ' + s2.append(s) + for j in range(0, 3): + print s2[j] + print '--------------------------------------' + file_object = open(u'基金综合排名结果.txt', 'w') + int_rank = 1 + try: + for fund_list in all_fund_list: + print str(int_rank) + '\t' + '\t'.join('{0}'.format(n) for n in fund_list) + file_object.write(str(int_rank) + '\t' + '\t'.join('{0}'.format(n) for n in fund_list) + '\n') + int_rank += 1 + finally: + file_object.close() + return all_fund_list + # sys.exit(0) +def getRankFund(): + # 全部基金排行 --基金导购 + url='http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&sc=z&st=desc&pi=1&pn=200&zf=diy&sh=list&rnd=0.4893989337468809' + #广发排行 + gfUrl='http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000248&sc=z&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.15840037296002807' + # 易方达1周排行 + EfundUrl='http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000229&sc=z&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.8037251392454077' + #易方达6月排行 + EfundUrl6='http://fund.eastmoney.com/api/FundGuide.aspx?dt=0&sd=&ed=&cp=80000229&sc=6y&st=desc&pi=1&pn=80&zf=diy&sh=list&rnd=0.2738232363825983' +def test(): + month_num = 1 + + print month_num + +if __name__ == "__main__": + reload(sys) + sys.setdefaultencoding('utf-8') + # sys.setdefaultencoding('utf-8') + # test() + main_zf() diff --git a/trade_process/fund_zf.pyc b/trade_process/fund_zf.pyc new file mode 100644 index 0000000..ecd33a5 Binary files /dev/null and b/trade_process/fund_zf.pyc differ diff --git a/trade_process/fundlist-2017-03-27.txt b/trade_process/fundlist-2017-03-27.txt new file mode 100644 index 0000000..7532cf6 --- /dev/null +++ b/trade_process/fundlist-2017-03-27.txt @@ -0,0 +1 @@ +var r = [["000001","HXCZ","华夏成长","混合型","HUAXIACHENGZHANG"],["000002","HXCZ","华夏成长(后端)","混合型","HUAXIACHENGZHANG"],["000003","ZHKZZA","中海可转债A","债券型","ZHONGHAIKEZHUANZHAIA"],["000004","ZHKZZC","中海可转债C","债券型","ZHONGHAIKEZHUANZHAIC"],["000005","JSZQXYDQZQ","嘉实增强信用定期债券","定开债券","JIASHIZENGQIANGXINYONGDINGQIZHAIQUAN"],["000007","PHGQZZQ","鹏华国企债债券","债券型","PENGHUAGUOQIZHAIZHAIQUAN"],["000008","JSZZ500ETFLJ","嘉实中证500ETF联接","联接基金","JIASHIZHONGZHENG500ETFLIANJIE"],["000009","YFDTTLCHBA","易方达天天理财货币A","货币型","YIFANGDATIANTIANLICAIHUOBIA"],["000010","YFDTTLCHBB","易方达天天理财货币B","货币型","YIFANGDATIANTIANLICAIHUOBIB"],["000011","HXDPJX","华夏大盘精选","混合型","HUAXIADAPANJINGXUAN"],["000012","HXDPJX","华夏大盘精选(后端)","混合型","HUAXIADAPANJINGXUAN"],["000013","YFDTTLCHBR","易方达天天理财货币R","货币型","YIFANGDATIANTIANLICAIHUOBIR"],["000014","HXJLZQ","华夏聚利债券","债券型","HUAXIAJULIZHAIQUAN"],["000015","HXCZZQA","华夏纯债债券A","债券型","HUAXIACHUNZHAIZHAIQUANA"],["000016","HXCZZQC","华夏纯债债券C","债券型","HUAXIACHUNZHAIZHAIQUANC"],["000017","CTKCXHH","财通可持续混合","混合型","CAITONGKECHIXUHUNHE"],["000020","JSCCPZTZHH","景顺长城品质投资混合","混合型","JINGSHUNCHANGCHENGPINZHITOUZIHUNHE"],["000021","HXYSZZHH","华夏优势增长混合","混合型","HUAXIAYOUSHIZENGZHANGHUNHE"],["000022","NFZPA","南方中票A","债券指数","NANFANGZHONGPIAOA"],["000023","NFZPC","南方中票C","债券指数","NANFANGZHONGPIAOC"],["000024","DMSLZQZQA","大摩双利增强债券A","债券型","DAMOSHUANGLIZENGQIANGZHAIQUANA"],["000025","DMSLZQZQC","大摩双利增强债券C","债券型","DAMOSHUANGLIZENGQIANGZHAIQUANC"],["000026","TDXYHLZQA","泰达信用合利债券A","定开债券","TAIDAXINYONGHELIZHAIQUANA"],["000027","TDXYHLZQB","泰达信用合利债券B","定开债券","TAIDAXINYONGHELIZHAIQUANB"],["000028","HFBBHH","华富保本混合","保本型","HUAFUBAOBENHUNHE"],["000029","FGHGCL","富国宏观策略","混合型","FUGUOHONGGUANCELUE"],["000030","CCJLBBHH","长城久利保本混合","保本型","CHANGCHENGJIULIBAOBENHUNHE"],["000031","HXFXHH","华夏复兴混合","混合型","HUAXIAFUXINGHUNHE"],["000032","YFDXYZZQA","易方达信用债债券A","债券型","YIFANGDAXINYONGZHAIZHAIQUANA"],["000033","YFDXYZZQC","易方达信用债债券C","债券型","YIFANGDAXINYONGZHAIZHAIQUANC"],["000037","GFLC7TZQA","广发理财7天债券A","理财型","GUANGFALICAI7TIANZHAIQUANA"],["000038","GFLC7TZQB","广发理财7天债券B","理财型","GUANGFALICAI7TIANZHAIQUANB"],["000039","NYGZZHH","农银高增长混合","混合型","NONGYINGAOZENGZHANGHUNHE"],["000041","HXQQJX","华夏全球精选","QDII","HUAXIAQUANQIUJINGXUAN"],["000042","CTKCXFZ100","财通可持续发展100","股票指数","CAITONGKECHIXUFAZHAN100"],["000043","JSMGCZGP","嘉实美国成长股票","QDII","JIASHIMEIGUOCHENGZHANGGUPIAO"],["000044","JSMGCZGPXH","嘉实美国成长股票现汇","QDII","JIASHIMEIGUOCHENGZHANGGUPIAOXIANHUI"],["000045","GYCYZA","工银产业债A","债券型","GONGYINCHANYEZHAIA"],["000046","GYCYZB","工银产业债B","债券型","GONGYINCHANYEZHAIB"],["000047","HXSZZQZQA","华夏双债增强债券A","债券型","HUAXIASHUANGZHAIZENGQIANGZHAIQUANA"],["000048","HXSZZQZQC","华夏双债增强债券C","债券型","HUAXIASHUANGZHAIZENGQIANGZHAIQUANC"],["000049","ZYBPQQZYDQZZS","中银标普全球资源等权重指数","QDII-指数","ZHONGYINBIAOPUQUANQIUZIYUANDENGQUANZHONGZHISHU"],["000050","CSCZZQA","长盛纯债债券A","债券型","CHANGSHENGCHUNZHAIZHAIQUANA"],["000051","HXHS300ETFLJ","华夏沪深300ETF联接","联接基金","HUAXIAHUSHEN300ETFLIANJIE"],["000052","CSCZZQC","长盛纯债债券C","债券型","CHANGSHENGCHUNZHAIZHAIQUANC"],["000053","PHSYZCZZQ","鹏华实业债纯债债券","债券型","PENGHUASHIYEZHAICHUNZHAIZHAIQUAN"],["000054","PHSZZLZQ","鹏华双债增利债券","债券型","PENGHUASHUANGZHAIZENGLIZHAIQUAN"],["000055","GFNSDK100ZSMYXH","广发纳斯达克100指数美元现汇","QDII-指数","GUANGFANASIDAKE100ZHISHUMEIYUANXIANHUI"],["000056","JXXFSJHH","建信消费升级混合","混合型","JIANXINXIAOFEISHENGJIHUNHE"],["000057","ZYXFZTHH","中银消费主题混合","混合型","ZHONGYINXIAOFEIZHUTIHUNHE"],["000058","GLABBHH","国联安保本混合","保本型","GUOLIANANBAOBENHUNHE"],["000059","GLAZZYY100","国联安中证医药100","股票指数","GUOLIANANZHONGZHENGYIYAO100"],["000060","GLAGZDT","国联安股债动态","混合型","GUOLIANANGUZHAIDONGTAI"],["000061","HXSSHH","华夏盛世混合","混合型","HUAXIASHENGSHIHUNHE"],["000062","YHLHZHDLHH","银华量化智慧动力混合","混合型","YINHUALIANGHUAZHIHUIDONGLIHUNHE"],["000063","CSDZXXZTLHPZHH","长盛电子信息主题灵活配置混合","混合型","CHANGSHENGDIANZIXINXIZHUTILINGHUOPEIZHIHUNHE"],["000064","DM18GYDQKFZQ","大摩18个月定期开放债券","定开债券","DAMO18GEYUEDINGQIKAIFANGZHAIQUAN"],["000065","GFJDQDHH","国富焦点驱动混合","混合型","GUOFUJIAODIANQUDONGHUNHE"],["000066","NAHXBBHH","诺安鸿鑫保本混合","保本型","NUOANHONGXINBAOBENHUNHE"],["000067","MSJYZZYXA","民生加银转债优选A","债券型","MINSHENGJIAYINZHUANZHAIYOUXUANA"],["000068","MSJYZZYXC","民生加银转债优选C","债券型","MINSHENGJIAYINZHUANZHAIYOUXUANC"],["000069","GTRYZGDJZQA","国投瑞银中高等级债券A","债券型","GUOTOURUIYINZHONGGAODENGJIZHAIQUANA"],["000070","GTRYZGDJZQC","国投瑞银中高等级债券C","债券型","GUOTOURUIYINZHONGGAODENGJIZHAIQUANC"],["000071","HXHSETFLJ","华夏恒生ETF联接","QDII-指数","HUAXIAHENGSHENGETFLIANJIE"],["000072","HABBHH","华安保本混合","保本型","HUAANBAOBENHUNHE"],["000073","STCZDL","上投成长动力","混合型","SHANGTOUCHENGZHANGDONGLI"],["000074","GYXYCZYNDKZQA","工银信用纯债一年定开债券A","定开债券","GONGYINXINYONGCHUNZHAIYINIANDINGKAIZHAIA"],["000075","HXHSLJXH","华夏恒生联接现汇","QDII-指数","HUAXIAHENGSHENGLIANJIEXIANHUI"],["000076","HXHSLJXC","华夏恒生联接现钞","QDII-指数","HUAXIAHENGSHENGLIANJIEXIANCHAO"],["000077","GYXYCZYNDKZQC","工银信用纯债一年定开债券C","定开债券","GONGYINXINYONGCHUNZHAIYINIANDINGKAIZHAIC"],["000078","GYXYCZLNDKZQA","工银信用纯债两年定开债券A","定开债券","GONGYINXINYONGCHUNZHAILIANGNIANDINGKAIZHAIA"],["000079","GYXYCZLNDKZQC","工银信用纯债两年定开债券C","定开债券","GONGYINXINYONGCHUNZHAILIANGNIANDINGKAIZHAIC"],["000080","TZKZZA","天治可转债A","债券型","TIANZHIKEZHUANZHAIA"],["000081","TZKZZC","天治可转债C","债券型","TIANZHIKEZHUANZHAIC"],["000082","JSYJAEFGP","嘉实研究阿尔法股票","股票型","JIASHIYANJIUAERFAGUPIAO"],["000083","HTFXFHYHH","汇添富消费行业混合","混合型","HUITIANFUXIAOFEIHANGYEHUNHE"],["000084","BSAYZQA","博时安盈债券A","债券型","BOSHIANYINGZHAIQUANA"],["000085","BSAYZQC","博时安盈债券C","债券型","BOSHIANYINGZHAIQUANC"],["000086","NFWL1NDQKFZQA","南方稳利1年定期开放债券A","定开债券","NANFANGWENLI1NIANDINGQIKAIFANGZHAIQUANA"],["000087","JSZZJBGZETFLJA","嘉实中证金边国债ETF联接A","联接基金","JIASHIZHONGZHENGJINBIANGUOZHAIETFLIANJIEA"],["000088","JSZZJBGZETFLJC","嘉实中证金边国债ETF联接C","联接基金","JIASHIZHONGZHENGJINBIANGUOZHAIETFLIANJIEC"],["000089","MSJYJYLCYDA","民生加银家盈理财月度A","理财型","MINSHENGJIAYINJIAYINGLICAIYUEDUA"],["000090","MSJYJYLCYDB","民生加银家盈理财月度B","理财型","MINSHENGJIAYINJIAYINGLICAIYUEDUB"],["000091","XCXSYFJZQ","信诚新双盈分级债券","债券型","XINCHENGXINSHUANGYINGFENJIZHAIQUAN"],["000092","XCXSYFJZQA","信诚新双盈分级债券A","固定收益","XINCHENGXINSHUANGYINGFENJIZHAIQUANA"],["000093","XCXSYFJZQB","信诚新双盈分级债券B","分级杠杆","XINCHENGXINSHUANGYINGFENJIZHAIQUANB"],["000103","GTZGQYJWGSYZQ","国泰中国企业境外高收益债券","QDII","GUOTAIZHONGGUOQIYEJINGWAIGAOSHOUYIZHAIQUAN"],["000104","HCXYZLZQ","华宸信用增利债券","债券型","HUACHENXINYONGZENGLIZHAIQUAN"],["000105","JXAXHBZQA","建信安心回报债券A","定开债券","JIANXINANXINHUIBAOZHAIQUANA"],["000106","JXAXHBZQC","建信安心回报债券C","定开债券","JIANXINANXINHUIBAOZHAIQUANC"],["000107","FGWJZQZQAB","富国稳健增强债券A/B","债券型","FUGUOWENJIANZENGQIANGZHAIQUANAB"],["000108","FGWJZQZQAB","富国稳健增强债券A/B(后端)","债券型","FUGUOWENJIANZENGQIANGZHAIQUANAB"],["000109","FGWJZQZQC","富国稳健增强债券C","债券型","FUGUOWENJIANZENGQIANGZHAIQUANC"],["000110","JYYABBHHA","金鹰元安保本混合A","保本型","JINYINGYUANANBAOBENHUNHEA"],["000111","YFDCZ1NDKZQA","易方达纯债1年定开债券A","定开债券","YIFANGDACHUNZHAI1NIANDINGKAIZHAIQUANA"],["000112","YFDCZ1NDKZQC","易方达纯债1年定开债券C","定开债券","YIFANGDACHUNZHAI1NIANDINGKAIZHAIQUANC"],["000113","JSRYBDQZQA","嘉实如意宝定期债券A","定开债券","JIASHIRUYIBAODINGQIZHAIQUANA"],["000114","JSRYBDQZQA","嘉实如意宝定期债券A(后端)","定开债券","JIASHIRUYIBAODINGQIZHAIQUANA"],["000115","JSRYBDQZQC","嘉实如意宝定期债券C","定开债券","JIASHIRUYIBAODINGQIZHAIQUANC"],["000116","JSFYCZDQZQ","嘉实丰益纯债定期债券","定开债券","JIASHIFENGYICHUNZHAIDINGQIZHAIQUAN"],["000117","GFLDPZHH","广发轮动配置混合","混合型","GUANGFALUNDONGPEIZHIHUNHE"],["000118","GFJXZQA","广发聚鑫债券A","债券型","GUANGFAJUXINZHAIQUANA"],["000119","GFJXZQC","广发聚鑫债券C","债券型","GUANGFAJUXINZHAIQUANC"],["000120","ZYMLZGHH","中银美丽中国混合","混合型","ZHONGYINMEILIZHONGGUOHUNHE"],["000121","HXYFYLLCHHA","华夏永福养老理财混合A","混合型","HUAXIAYONGFUYANGLAOLICAIHUNHEA"],["000122","HTFSYZZQA","汇添富实业债债券A","债券型","HUITIANFUSHIYEZHAIZHAIQUANA"],["000123","HTFSYZZQC","汇添富实业债债券C","债券型","HUITIANFUSHIYEZHAIZHAIQUANC"],["000124","HBFWYXHH","华宝服务优选混合","混合型","HUABAOFUWUYOUXUANHUNHE"],["000125","STMGTYNFHHA","上投摩根天颐年丰混合A","混合型","SHANGTOUMOGENTIANYINIANFENGHUNHEA"],["000126","ZSARBBHH","招商安润保本混合","保本型","ZHAOSHANGANRUNBAOBENHUNHE"],["000127","NYHYLXHH","农银行业领先混合","混合型","NONGYINHANGYELINGXIANHUNHE"],["000128","DCJADRZQA","大成景安短融债券A","债券型","DACHENGJINGANDUANRONGZHAIQUANA"],["000129","DCJADRZQB","大成景安短融债券B","债券型","DACHENGJINGANDUANRONGZHAIQUANB"],["000130","DCJXXYZZQA","大成景兴信用债债券A","债券型","DACHENGJINGXINGXINYONGZHAIZHAIQUANA"],["000131","DCJXXYZZQC","大成景兴信用债债券C","债券型","DACHENGJINGXINGXINYONGZHAIZHAIQUANC"],["000136","MSJYCLJXHH","民生加银策略精选混合","混合型","MINSHENGJIAYINCELUEJINGXUANHUNHE"],["000137","MSJYSSZLA","民生加银岁岁增利A","定开债券","MINSHENGJIAYINSUISUIZENGLIA"],["000138","MSJYSSZLC","民生加银岁岁增利C","定开债券","MINSHENGJIAYINSUISUIZENGLIC"],["000139","FGGYQYZZQA","富国国有企业债债券A","债券型","FUGUOGUOYOUQIYEZHAIZHAIQUANA"],["000140","FGGYQYZZQA","富国国有企业债债券A(后端)","债券型","FUGUOGUOYOUQIYEZHAIZHAIQUANA"],["000141","FGGYQYZCJ","富国国有企业债C级","债券型","FUGUOGUOYOUQIYEZHAICJI"],["000142","RTTTBBHHA","融通通泰保本混合A","保本型","RONGTONGTONGTAIBAOBENHUNHEA"],["000143","PHSZJLZQ","鹏华双债加利债券","债券型","PENGHUASHUANGZHAIJIALIZHAIQUAN"],["000147","YFDGDJXYZA","易方达高等级信用债A","债券型","YIFANGDAGAODENGJIXINYONGZHAIA"],["000148","YFDGDJXYZC","易方达高等级信用债C","债券型","YIFANGDAGAODENGJIXINYONGZHAIC"],["000149","HASZTLZQA","华安双债添利债券A","债券型","HUAANSHUANGZHAITIANLIZHAIQUANA"],["000150","HASZTLZQC","华安双债添利债券C","债券型","HUAANSHUANGZHAITIANLIZHAIQUANC"],["000151","NAXYYNDKZQ","诺安信用一年定开债券","定开债券","NUOANXINYONGYINIANDINGKAIZHAIQUAN"],["000152","DCJXCZA","大成景旭纯债A","债券型","DACHENGJINGXUCHUNZHAIA"],["000153","DCJXCZC","大成景旭纯债C","债券型","DACHENGJINGXUCHUNZHAIC"],["000154","FGLHHS300","富国量化沪深300(后端)","股票指数","FUGUOLIANGHUAHUSHEN300"],["000155","FGTZTSZTLDHH","富国通胀通缩主题轮动混合(后端)","混合型","FUGUOTONGZHANGTONGSUOZHUTILUNDONGHUNHE"],["000157","FGQQDJXFPHH","富国全球顶级消费品混合(后端)","QDII","FUGUOQUANQIUDINGJIXIAOFEIPINHUNHE"],["000158","FGDTHBHH","富国低碳环保混合(后端)","混合型","FUGUODITANHUANBAOHUNHE"],["000159","FGGXJSCYHH","富国高新技术产业混合(后端)","混合型","FUGUOGAOXINJISHUCHANYEHUNHE"],["000160","FGQHBABJ","富国强回报A/B级(后端)","定开债券","FUGUOQIANGHUIBAOA/BJI"],["000161","FGHGCL","富国宏观策略(后端)","混合型","FUGUOHONGGUANCELUE"],["000162","FGZGZXPHH","富国中国中小盘混合(后端)","QDII","FUGUOZHONGGUOZHONGXIAOPANHUNHE"],["000163","FGQQZQ","富国全球债券(后端)","QDII","FUGUOQUANQIUZHAIQUAN"],["000164","FGSZZZLJ","富国上证综指联接(后端)","联接基金","FUGUOSHANGZHENGZENGZHILIANJIE"],["000165","GTRYCLJXHH","国投瑞银策略精选混合","混合型","GUOTOURUIYINCELUEJINGXUANHUNHE"],["000166","ZHAXBB","中海安鑫保本","保本型","ZHONGHAIANXINBAOBEN"],["000167","GFJYLHPZHHA","广发聚优灵活配置混合A","混合型","GUANGFAJUYOULINGHUOPEIZHIHUNHEA"],["000169","TDSYZQZQA","泰达收益增强债券A","债券型","TAIDASHOUYIZENGQIANGZHAIQUANA"],["000170","TDSYZQZQB","泰达收益增强债券B","债券型","TAIDASHOUYIZENGQIANGZHAIQUANB"],["000171","YFDYFHBZQ","易方达裕丰回报债券","债券型","YIFANGDAYUFENGHUIBAOZHAIQUAN"],["000172","HTBRLHZQHHA","华泰柏瑞量化增强混合A","混合型","HUATAIBAIRUILIANGHUAZENGQIANGHUNHEA"],["000173","HTFML30HH","汇添富美丽30混合","混合型","HUITIANFUMEILI30HUNHE"],["000174","HTFGXZZQA","汇添富高息债债券A","债券型","HUITIANFUGAOXIZHAIZHAIQUANA"],["000175","HTFGXZZQC","汇添富高息债债券C","债券型","HUITIANFUGAOXIZHAIZHAIQUANC"],["000176","JSHS300ZSYJZQ","嘉实沪深300指数研究增强","股票指数","JIASHIHUSHEN300ZHISHUYANJIUZENGQIANG"],["000177","JSFYXYDQZQA","嘉实丰益信用定期债券A","定开债券","JIASHIFENGYIXINYONGDINGQIZHAIQUANA"],["000178","BSLHPZHHA","博时灵活配置混合A","混合型","BOSHILINGHUOPEIZHIHUNHEA"],["000179","GFMGFDCZS","广发美国房地产指数","QDII-指数","GUANGFAMEIGUOFANGDECHANZHISHU"],["000180","GFMGFDCZSXH","广发美国房地产指数现汇","QDII-指数","GUANGFAMEIGUOFANGDECHANZHISHUXIANHUI"],["000181","JSCCSJJLZQA","景顺长城四季金利债券A","债券型","JINGSHUNCHANGCHENGSIJIJINLIZHAIQUANA"],["000182","JSCCSJJLZQC","景顺长城四季金利债券C","债券型","JINGSHUNCHANGCHENGSIJIJINLIZHAIQUANC"],["000183","JSFYCLDQZQ","嘉实丰益策略定期债券","定开债券","JIASHIFENGYICELUEDINGQIZHAIQUAN"],["000184","GYTFZQA","工银添福债券A","债券型","GONGYINTIANFUZHAIQUANA"],["000185","GYTFZQB","工银添福债券B","债券型","GONGYINTIANFUZHAIQUANB"],["000186","HTBRJJHZQ","华泰柏瑞季季红债券","债券型","HUATAIBAIRUIJIJIHONGZHAIQUAN"],["000187","HTBRFSCZZQA","华泰柏瑞丰盛纯债债券A","债券型","HUATAIBAIRUIFENGSHENGCHUNZHAIZHAIQUANA"],["000188","HTBRFSCZZQC","华泰柏瑞丰盛纯债债券C","债券型","HUATAIBAIRUIFENGSHENGCHUNZHAIZHAIQUANC"],["000189","YFDBBYHHH","易方达保本一号混合","保本型","YIFANGDABAOBENYIHAOHUNHE"],["000190","ZYXHBLHPZHH","中银新回报灵活配置混合","混合型","ZHONGYINXINHUIBAOLINGHUOPEIZHIHUNHE"],["000191","FGXYZZQA","富国信用债债券A","债券型","FUGUOXINYONGZHAIZHAIQUANA"],["000192","FGXYZZQC","富国信用债债券C","债券型","FUGUOXINYONGZHAIZHAIQUANC"],["000193","GTMGFDCKFGP","国泰美国房地产开发股票","QDII","GUOTAIMEIGUOFANGDECHANKAIFAGUPIAO"],["000194","YHXYSJHZQ","银华信用四季红债券","债券型","YINHUAXINYONGSIJIHONGZHAIQUAN"],["000195","GYBB3HHHA","工银保本3号混合A","保本型","GONGYINBAOBEN3HAOHUNHEA"],["000196","GYBB3HHHB","工银保本3号混合B","保本型","GONGYINBAOBEN3HAOHUNHEB"],["000197","FGMBSYYNQCZZQ","富国目标收益一年期纯债债券","定开债券","FUGUOMUBIAOSHOUYIYINIANQICHUNZHAIZHAIQUAN"],["000198","THYEBHB","天弘余额宝货币","货币型","TIANHONGYUEBAOHUOBI"],["000199","GTCLSYLHPZHH","国泰策略收益灵活配置混合","混合型","GUOTAICELUESHOUYILINGHUOPEIZHIHUNHE"],["000200","BSSSZLYNDKZQ","博时岁岁增利一年定开债券","定开债券","BOSHISUISUIZENGLIYINIANDINGKAIZHAIQUAN"],["000201","NATXYNDQKFZQA","诺安泰鑫一年定期开放债券A","定开债券","NUOANTAIXINYINIANDINGQIKAIFANGZHAIQUANA"],["000202","FGMBSYLNQCZZQ","富国目标收益两年期纯债债券","定开债券","FUGUOMUBIAOSHOUYILIANGNIANQICHUNZHAIZHAIQUAN"],["000203","GFRRSYHBA","国富日日收益货币A","货币型","GUOFURIRISHOUYIHUOBIA"],["000204","GFRRSYHBB","国富日日收益货币B","货币型","GUOFURIRISHOUYIHUOBIB"],["000205","YFDTZJXYZZQA","易方达投资级信用债债券A","债券型","YIFANGDATOUZIJIXINYONGZHAIZHAIQUANA"],["000206","YFDTZJXYZZQC","易方达投资级信用债债券C","债券型","YIFANGDATOUZIJIXINYONGZHAIZHAIQUANC"],["000207","JXSZZQZQA","建信双债增强债券A","债券型","JIANXINSHUANGZHAIZENGQIANGZHAIQUANA"],["000208","JXSZZQZQC","建信双债增强债券C","债券型","JIANXINSHUANGZHAIZENGQIANGZHAIQUANC"],["000209","XCXXCYHH","信诚新兴产业混合","混合型","XINCHENGXINXINGCHANYEHUNHE"],["000210","GDBDXXJBHBA","光大保德信现金宝货币A","货币型","GUANGDAXIANJINBAOHUOBIA"],["000211","GDBDXXJBHBB","光大保德信现金宝货币B","货币型","GUANGDAXIANJINBAOHUOBIB"],["000212","TXXYDQKFZQA","泰信鑫益定期开放债券A","定开债券","TAIXINXINYIDINGQIKAIFANGZHAIQUANA"],["000213","TXXYDQKFZQC","泰信鑫益定期开放债券C","定开债券","TAIXINXINYIDINGQIKAIFANGZHAIQUANC"],["000214","GFCZYXHH","广发成长优选混合","混合型","GUANGFACHENGZHANGYOUXUANHUNHE"],["000215","GFQSYXLHPZ","广发趋势优选灵活配置","混合型","GUANGFAQUSHIYOUXUANLINGHUOPEIZHI"],["000216","HAHJYETFLJA","华安黄金易ETF联接A","联接基金","HUAANHUANGJINYIETFLIANJIEA"],["000217","HAHJYETFLJC","华安黄金易ETF联接C","联接基金","HUAANHUANGJINYIETFLIANJIEC"],["000218","GTHJETFLJ","国泰黄金ETF联接","联接基金","GUOTAIHUANGJINETFLIANJIE"],["000219","BSYYLHPZ","博时裕益灵活配置","混合型","BOSHIYUYILINGHUOPEIZHI"],["000220","FGYLBJHYHH","富国医疗保健行业混合","混合型","FUGUOYILIAOBAOJIANHANGYEHUNHE"],["000221","HTFNNLDQKFZQA","汇添富年年利定期开放债券A","定开债券","HUITIANFUNIANNIANLIDINGQIKAIFANGZHAIQUANA"],["000222","HTFNNLDQKFZQC","汇添富年年利定期开放债券C","定开债券","HUITIANFUNIANNIANLIDINGQIKAIFANGZHAIQUANC"],["000225","CSNNSYDQKFZQA","长盛年年收益定期开放债券A","定开债券","CHANGSHENGNIANNIANSHOUYIDINGQIKAIFANGZHAIQUANA"],["000226","CSNNSYDQKFZQC","长盛年年收益定期开放债券C","定开债券","CHANGSHENGNIANNIANSHOUYIDINGQIKAIFANGZHAIQUANC"],["000227","HANNHZQA","华安年年红债券A","定开债券","HUAANNIANNIANHONGZHAIQUANA"],["000235","NAWGSYYNDKZQ","诺安稳固收益一年定开债券","定开债券","NUOANWENGUSHOUYIYINIANDINGKAIZHAIQUAN"],["000236","GYYYXDQZFZQA","工银月月薪定期支付债券A","债券型","GONGYINYUEYUEXINDINGQIZHIFUZHAIQUANA"],["000237","GTRYYNDQKFZA","国投瑞银一年定期开放债A","定开债券","GUOTOURUIYINYINIANDINGQIKAIFANGZHAIA"],["000238","GTRYYNDQKFZC","国投瑞银一年定期开放债C","定开债券","GUOTOURUIYINYINIANDINGQIKAIFANGZHAIC"],["000239","HANNYDKZA","华安年年盈定开债A","定开债券","HUAANNIANNIANYINGDINGKAIZHAIA"],["000240","HANNYDKZC","华安年年盈定开债C","定开债券","HUAANNIANNIANYINGDINGKAIZHAIC"],["000241","BYHXYSHHC","宝盈核心优势混合C","混合型","BAOYINGHEXINYOUSHIHUNHEC"],["000242","JSCCCLJX","景顺长城策略精选","混合型","JINGSHUNCHANGCHENGCELUEJINGXUAN"],["000244","THWLDQKFZQA","天弘稳利定期开放债券A","定开债券","TIANHONGWENLIDINGQIKAIFANGZHAIQUANA"],["000245","THWLDQKFZQB","天弘稳利定期开放债券B","定开债券","TIANHONGWENLIDINGQIKAIFANGZHAIQUANB"],["000246","BSYYXDQZFZQ","博时月月薪定期支付债券","定开债券","BOSHIYUEYUEXINDINGQIZHIFUZHAIQUAN"],["000247","FZFBHLZQ","方正富邦互利债券","定开债券","FANGZHENGFUBANGHULIZHAIQUAN"],["000248","HTFZZZYXFETFLJ","汇添富中证主要消费ETF联接","联接基金","HUITIANFUZHONGZHENGZHUYAOXIAOFEIETFLIANJIE"],["000251","GYJRDCHH","工银金融地产混合","混合型","GONGYINJINRONGDICHANHUNHE"],["000252","JSCCJXXYCZA","景顺长城景兴信用纯债A","债券型","JINGSHUNCHANGCHENGJINGXINGXINYONGCHUNZHAIA"],["000253","JSCCJXXYCZC","景顺长城景兴信用纯债C","债券型","JINGSHUNCHANGCHENGJINGXINGXINYONGCHUNZHAIC"],["000254","CCZQSYDKZQA","长城增强收益定开债券A","定开债券","CHANGCHENGZENGQIANGSHOUYIDINGKAIZHAIQUANA"],["000255","CCZQSYDKZQC","长城增强收益定开债券C","定开债券","CHANGCHENGZENGQIANGSHOUYIDINGKAIZHAIQUANC"],["000256","STMGHLHBHHA","上投摩根红利回报混合A","混合型","SHANGTOUMOGENHONGLIHUIBAOHUNHEA"],["000257","STSSYDKZQA","上投岁岁盈定开债券A","定开债券","SHANGTOUSUISUIYINGDINGKAIZHAIQUANA"],["000258","STSSYDKZQC","上投岁岁盈定开债券C","定开债券","SHANGTOUSUISUIYINGDINGKAIZHAIQUANC"],["000259","NYQJSYHH","农银区间收益混合","混合型","NONGYINQUJIANSHOUYIHUNHE"],["000260","XCJJDQZFZQ","信诚季季定期支付债券","债券型","XINCHENGJIJIDINGQIZHIFUZHAIQUAN"],["000263","GYXXCYHH","工银信息产业混合","混合型","GONGYINXINXICHANYEHUNHE"],["000264","BSNXZZHH","博时内需增长混合","混合型","BOSHINEIXUZENGZHANGHUNHE"],["000265","YFDHJTL1NDKZQA","易方达恒久添利1年定开债券A","定开债券","YIFANGDAHENGJIUTIANLI1NIANDINGKAIZHAIQUANA"],["000266","YFDHJTL1NDKZQC","易方达恒久添利1年定开债券C","定开债券","YIFANGDAHENGJIUTIANLI1NIANDINGKAIZHAIQUANC"],["000267","GFJLYNDQKFZQA","广发集利一年定期开放债券A","定开债券","GUANGFAJILIYINIANDINGQIKAIFANGZHAIQUANA"],["000268","GFJLYNDQKFZQC","广发集利一年定期开放债券C","定开债券","GUANGFAJILIYINIANDINGQIKAIFANGZHAIQUANC"],["000270","JXAXBBHH","建信安心保本混合","保本型","JIANXINANXINBAOBENHUNHE"],["000271","ZYDQKFZQA","中邮定期开放债券A","定开债券","ZHONGYOUDINGQIKAIFANGZHAIQUANA"],["000272","ZYDQKFZQC","中邮定期开放债券C","定开债券","ZHONGYOUDINGQIKAIFANGZHAIQUANC"],["000273","HRYDAXLHPZHH","华润元大安鑫灵活配置混合","混合型","HUARUNYUANDAANXINLINGHUOPEIZHIHUNHE"],["000274","GFYTZGSYZQ","广发亚太中高收益债券","QDII","GUANGFAYATAIZHONGGAOSHOUYIZHAIQUAN"],["000275","GFYTZGSYZQXH","广发亚太中高收益债券现汇","QDII","GUANGFAYATAIZHONGGAOSHOUYIZHAIQUANXIANHUI"],["000277","BSSYXDQZFZQ","博时双月薪定期支付债券","定开债券","BOSHISHUANGYUEXINDINGQIZHIFUZHAIQUAN"],["000278","RTTZLHPZHH","融通通泽灵活配置混合","混合型","RONGTONGTONGZELINGHUOPEIZHIHUNHE"],["000279","HSHLYXLHPZ","华商红利优选灵活配置","混合型","HUASHANGHONGLIYOUXUANLINGHUOPEIZHI"],["000280","BSSZZQZQA","博时双债增强债券A","债券型","BOSHISHUANGZHAIZENGQIANGZHAIQUANA"],["000281","BSSZZQZQC","博时双债增强债券C","债券型","BOSHISHUANGZHAIZENGQIANGZHAIQUANC"],["000286","YHXYJJHZQ","银华信用季季红债券","债券型","YINHUAXINYONGJIJIHONGZHAIQUAN"],["000287","YHYLZQA","银华永利债券A","债券型","YINHUAYONGLIZHAIQUANA"],["000288","YHYLZQC","银华永利债券C","债券型","YINHUAYONGLIZHAIQUANC"],["000289","PHFTDQKFZQA","鹏华丰泰定期开放债券A","定开债券","PENGHUAFENGTAIDINGQIKAIFANGZHAIQUANA"],["000290","PHQQGSYZ","鹏华全球高收益债","QDII","PENGHUAQUANQIUGAOSHOUYIZHAI"],["000291","PHFXFJZQ","鹏华丰信分级债券","债券型","PENGHUAFENGXINFENJIZHAIQUAN"],["000292","PHFXFJZQA","鹏华丰信分级债券A","固定收益","PENGHUAFENGXINFENJIZHAIQUANA"],["000293","PHFXFJZQB","鹏华丰信分级债券B","分级杠杆","PENGHUAFENGXINFENJIZHAIQUANB"],["000294","HASTYXHH","华安生态优先混合","混合型","HUAANSHENGTAIYOUXIANHUNHE"],["000295","PHFSDQKFZQA","鹏华丰实定期开放债券A","定开债券","PENGHUAFENGSHIDINGQIKAIFANGZHAIQUANA"],["000296","PHFSDQKFZQB","鹏华丰实定期开放债券B","定开债券","PENGHUAFENGSHIDINGQIKAIFANGZHAIQUANB"],["000297","PHKZZZQ","鹏华可转债债券","债券型","PENGHUAKEZHUANZHAIZHAIQUAN"],["000298","ZHCZZQA","中海纯债债券A","债券型","ZHONGHAICHUNZHAIZHAIQUANA"],["000299","ZHCZZQC","中海纯债债券C","债券型","ZHONGHAICHUNZHAIZHAIQUANC"],["000300","DBDLHBA","德邦德利货币A","货币型","DEBANGDELIHUOBIA"],["000301","DBDLHBB","德邦德利货币B","货币型","DEBANGDELIHUOBIB"],["000302","GTTJHLWZQ","国泰淘金互联网债券","债券型","GUOTAITAOJINHULIANWANGZHAIQUAN"],["000303","CSSYHDQZQA","长盛双月红定期债券A","定开债券","CHANGSHENGSHUANGYUEHONGDINGQIZHAIQUANA"],["000304","CSSYHDQZQC","长盛双月红定期债券C","定开债券","CHANGSHENGSHUANGYUEHONGDINGQIZHAIQUANC"],["000305","ZYZGDJZQ","中银中高等级债券","债券型","ZHONGYINZHONGGAODENGJIZHAIQUAN"],["000306","THHLZQ","天弘弘利债券","债券型","TIANHONGHONGLIZHAIQUAN"],["000307","YFDHJETFLJA","易方达黄金ETF联接A","联接基金","YIFANGDAHUANGJINETFLIANJIEA"],["000308","JXCXZGHH","建信创新中国混合","混合型","JIANXINCHUANGXINZHONGGUOHUNHE"],["000309","DMPZSHGP","大摩品质生活股票","股票型","DAMOPINZHISHENGHUOGUPIAO"],["000310","AXYLXYA","安信永利信用A","定开债券","ANXINYONGLIXINYONGA"],["000311","JSCCHS300ZQ","景顺长城沪深300增强","股票指数","JINGSHUNCHANGCHENGHUSHEN300ZENGQIANG"],["000312","HAHS300ZQA","华安沪深300增强A","股票指数","HUAANHUSHEN300ZENGQIANGA"],["000313","HAHS300ZQC","华安沪深300增强C","股票指数","HUAANHUSHEN300ZENGQIANGC"],["000314","ZSRFLHPZHHFQSA","招商瑞丰灵活配置混合发起式A","混合型","ZHAOSHANGRUIFENGLINGHUOPEIZHIHUNHEFAQISHIA"],["000316","ZHHLCZFJZQ","中海惠利纯债分级债券","债券型","ZHONGHAIHUILICHUNZHAIFENJIZHAIQUAN"],["000317","ZHHLCZFJZQA","中海惠利纯债分级债券A","固定收益","ZHONGHAIHUILICHUNZHAIFENJIZHAIQUANA"],["000318","ZHHLCZFJZQB","中海惠利纯债分级债券B","分级杠杆","ZHONGHAIHUILICHUNZHAIFENJIZHAIQUANB"],["000319","TDTLZQA","泰达淘利债券A","债券型","TAIDATAOLIZHAIQUANA"],["000320","TDTLZQB","泰达淘利债券B","债券型","TAIDATAOLIZHAIQUANB"],["000322","NY14TLCA","农银14天理财A","理财型","NONGYIN14TIANLICAIA"],["000323","NY14TLCB","农银14天理财B","理财型","NONGYIN14TIANLICAIB"],["000324","HRYDXJSYHBA","华润元大现金收益货币A","货币型","HUARUNYUANDAXIANJINSHOUYIHUOBIA"],["000325","HRYDXJSYHBB","华润元大现金收益货币B","货币型","HUARUNYUANDAXIANJINSHOUYIHUOBIB"],["000326","NFSD","南方顺达","保本型","NANFANGSHUNDA"],["000327","NFFH","南方丰合","保本型","NANFANGFENGHE"],["000328","STMGZXDL","上投摩根转型动力","混合型","SHANGTOUMOGENZHUANXINGDONGLI"],["000329","PHFRDKZ","鹏华丰饶定开债","定开债券","PENGHUAFENGRAODINGKAIZHAI"],["000330","HTFXJBHB","汇添富现金宝货币","货币型","HUITIANFUXIANJINBAOHUOBI"],["000331","ZJHBA","中加货币A","货币型","ZHONGJIAHUOBIA"],["000332","ZJHBC","中加货币C","货币型","ZHONGJIAHUOBIC"],["000333","CCWGSYZQA","长城稳固收益债券A","债券型","CHANGCHENGWENGUSHOUYIZHAIQUANA"],["000334","CCWGSYZQC","长城稳固收益债券C","债券型","CHANGCHENGWENGUSHOUYIZHAIQUANC"],["000335","AXYLXYC","安信永利信用C","定开债券","ANXINYONGLIXINYONGC"],["000336","NYYJJX","农银研究精选","混合型","NONGYINYANJIUJINGXUAN"],["000338","PHSZBLZQ","鹏华双债保利债券","债券型","PENGHUASHUANGZHAIBAOLIZHAIQUAN"],["000339","CCYLBJHH","长城医疗保健混合","混合型","CHANGCHENGYILIAOBAOJIANHUNHE"],["000341","JSXXSCC2QDII","嘉实新兴市场C2(QDII)","QDII","JIASHIXINXINGSHICHANGC2QDII"],["000342","JSXXSCA1QDII","嘉实新兴市场A1(QDII)","QDII","JIASHIXINXINGSHICHANGA1QDII"],["000343","HXCFBHBA","华夏财富宝货币A","货币型","HUAXIACAIFUBAOHUOBIA"],["000345","PHFRDQKFZQ","鹏华丰融定期开放债券","定开债券","PENGHUAFENGRONGDINGQIKAIFANGZHAIQUAN"],["000346","JXAXHBLNDKZQA","建信安心回报两年定开债券A","定开债券","JIANXINANXINHUIBAOLIANGNIANDINGKAIZHAIQUANA"],["000347","JXAXHBLNDKZQC","建信安心回报两年定开债券C","定开债券","JIANXINANXINHUIBAOLIANGNIANDINGKAIZHAIQUANC"],["000351","GFHFDQZQA","国富恒丰定期债券A","定开债券","GUOFUHENGFENGDINGQIZHAIQUANA"],["000352","GFHFDQZQC","国富恒丰定期债券C","定开债券","GUOFUHENGFENGDINGQIZHAIQUANC"],["000354","CSCZHZTHH","长盛城镇化主题混合","混合型","CHANGSHENGCHENGZHENHUAZHUTIHUNHE"],["000355","NFFYA","南方丰元A","债券型","NANFANGFENGYUANA"],["000356","NFFYC","南方丰元C","债券型","NANFANGFENGYUANC"],["000359","YFDYLCHB","易方达易理财货币","货币型","YIFANGDAYILICAIHUOBI"],["000360","XCNNYYA","信诚年年有余A","定开债券","XINCHENGNIANNIANYOUYUA"],["000361","XCNNYYB","信诚年年有余B","定开债券","XINCHENGNIANNIANYOUYUB"],["000362","GTJXJZYSLHPZA","国泰聚信价值优势灵活配置A","混合型","GUOTAIJUXINJIAZHIYOUSHILINGHUOPEIZHIA"],["000363","GTJXJZYSLHPZC","国泰聚信价值优势灵活配置C","混合型","GUOTAIJUXINJIAZHIYOUSHILINGHUOPEIZHIC"],["000366","HTFTFTHBA","汇添富添富通货币A","货币型","HUITIANFUTIANFUTONGHUOBIA"],["000367","GTAKYLDQZFHHA","国泰安康养老定期支付混合A","混合型","GUOTAIANKANGYANGLAODINGQIZHIFUHUNHEA"],["000368","HTFHS300AZZS","汇添富沪深300安中指数","股票指数","HUITIANFUHUSHEN300ANZHONGZHISHU"],["000369","GFQQYLBJXC","广发全球医疗保健现钞","QDII-指数","GUANGFAQUANQIUYILIAOBAOJIANXIANCHAO"],["000370","GFQQYLBJXH","广发全球医疗保健现汇","QDII-指数","GUANGFAQUANQIUYILIAOBAOJIANXIANHUI"],["000371","MSJYXJBHB","民生加银现金宝货币","货币型","MINSHENGJIAYINXIANJINBAOHUOBI"],["000372","ZYHLBNDQKFZQ","中银惠利半年定期开放债券","定开债券","ZHONGYINHUILIBANNIANDINGQIKAIFANGZHAIQUAN"],["000373","HAZZXFYYETFLJA","华安中证细分医药ETF联接A","联接基金","HUAANZHONGZHENGXIFENYIYAOETFLIANJIEA"],["000376","HAZZXFYYETFLJC","华安中证细分医药ETF联接C","联接基金","HUAANZHONGZHENGXIFENYIYAOETFLIANJIEC"],["000377","STSZZLA","上投双债增利A","债券型","SHANGTOUSHUANGZHAIZENGLIA"],["000378","STSZZLC","上投双债增利C","债券型","SHANGTOUSHUANGZHAIZENGLIC"],["000379","PADHRZLHB","平安大华日增利货币","货币型","PINGANDAHUARIZENGLIHUOBI"],["000380","JSCCJYHBA","景顺长城景益货币A","货币型","JINGSHUNCHANGCHENGJINGYIHUOBIA"],["000381","JSCCJYHBB","景顺长城景益货币B","货币型","JINGSHUNCHANGCHENGJINGYIHUOBIB"],["000385","JSCCJYSLZQA","景顺长城景颐双利债券A","债券型","JINGSHUNCHANGCHENGJINGYISHUANGLIZHAIQUANA"],["000386","JSCCJYSLZQC","景顺长城景颐双利债券C","债券型","JINGSHUNCHANGCHENGJINGYISHUANGLIZHAIQUANC"],["000387","TDHLRLZQA","泰达宏利瑞利债券A","固定收益","TAIDAHONGLIRUILIZHAIQUANA"],["000388","TDHLRLZQB","泰达宏利瑞利债券B","分级杠杆","TAIDAHONGLIRUILIZHAIQUANB"],["000389","GFTTHHBA","广发天天红货币A","货币型","GUANGFATIANTIANHONGHUOBIA"],["000390","HSYSHY","华商优势行业","混合型","HUASHANGYOUSHIHANGYE"],["000394","RTTYDRZQA","融通通源短融债券A","债券型","RONGTONGTONGYUANDUANRONGZHAIQUANA"],["000395","HTFAXZGZQA","汇添富安心中国债券A","债券型","HUITIANFUANXINZHONGGUOZHAIQUANA"],["000396","HTFAXZGZQC","汇添富安心中国债券C","债券型","HUITIANFUANXINZHONGGUOZHAIQUANC"],["000397","HTFQEBHB","汇添富全额宝货币","货币型","HUITIANFUQUANEBAOHUOBI"],["000398","HFLHPZHH","华富灵活配置混合","混合型","HUAFULINGHUOPEIZHIHUNHE"],["000400","ZRZXDQKFZQA","中融增鑫定期开放债券A","定开债券","ZHONGRONGZENGXINDINGQIKAIFANGZHAIQUANA"],["000401","ZRZXDQKFZQC","中融增鑫定期开放债券C","定开债券","ZHONGRONGZENGXINDINGQIKAIFANGZHAIQUANC"],["000402","GYCZZQA","工银纯债债券A","债券型","GONGYINCHUNZHAIZHAIQUANA"],["000403","GYCZZQB","工银纯债债券B","债券型","GONGYINCHUNZHAIZHAIQUANB"],["000404","YFDXXCZLHPZ","易方达新兴成长灵活配置","混合型","YIFANGDAXINXINGCHENGZHANGLINGHUOPEIZHI"],["000405","XCYYZF","信诚月月支付","债券型","XINCHENGYUEYUEZHIFU"],["000406","HTFSLZQZQA","汇添富双利增强债券A","债券型","HUITIANFUSHUANGLIZENGQIANGZHAIQUANA"],["000407","HTFSLZQZQC","汇添富双利增强债券C","债券型","HUITIANFUSHUANGLIZENGQIANGZHAIQUANC"],["000408","MSJYCZHHH","民生加银城镇化混合","混合型","MINSHENGJIAYINCHENGZHENHUAHUNHE"],["000409","PHHBCYGP","鹏华环保产业股票","股票型","PENGHUAHUANBAOCHANYEGUPIAO"],["000410","YMFWLXHH","益民服务领先混合","混合型","YIMINFUWULINGXIANHUNHE"],["000411","JSCCYZCZ","景顺长城优质成长","股票型","JINGSHUNCHANGCHENGYOUZHICHENGZHANG"],["000412","GKSYLJDKXYZA","国开岁月鎏金定开信用债A","定开债券","GUOKAISUIYUELIUJINDINGKAIXINYONGZHAIA"],["000413","GKSYLJDKXYZC","国开岁月鎏金定开信用债C","定开债券","GUOKAISUIYUELIUJINDINGKAIXINYONGZHAIC"],["000414","JSJDSYCLDQHH","嘉实绝对收益策略定期混合","混合型","JIASHIJUEDUISHOUYICELUEDINGQIHUNHE"],["000415","DMTL18GYKFZQA","大摩添利18个月开放债券A","定开债券","DAMOTIANLI18GEYUEDINGKAIZHAIA"],["000416","DMTL18GYKFZQC","大摩添利18个月开放债券C","定开债券","DAMOTIANLI18GEYUEDINGKAIZHAIC"],["000417","GLAXJXLHPZ","国联安新精选灵活配置","混合型","GUOLIANANXINJINGXUANLINGHUOPEIZHI"],["000418","JSCCCZZX","景顺长城成长之星","股票型","JINGSHUNCHANGCHENGCHENGZHANGZHIXING"],["000419","DMYZXJCZA","大摩优质信价纯债A","债券型","DAMOYOUZHIXINJIACHUNZHAIA"],["000420","DMYZXJCZC","大摩优质信价纯债C","债券型","DAMOYOUZHIXINJIACHUNZHAIC"],["000421","HTBRFHZQA","华泰柏瑞丰汇债券A","债券型","HUATAIBAIRUIFENGHUIZHAIQUANA"],["000422","HTBRFHZQC","华泰柏瑞丰汇债券C","债券型","HUATAIBAIRUIFENGHUIZHAIQUANC"],["000423","QHKYSJQDHHA","前海开源事件驱动混合A","混合型","QIANHAIKAIYUANSHIJIANQUDONGHUNHEA"],["000424","CSTLBHBA","长盛添利宝货币A","货币型","CHANGSHENGTIANLIBAOHUOBIA"],["000425","CSTLBHBB","长盛添利宝货币B","货币型","CHANGSHENGTIANLIBAOHUOBIB"],["000426","DCXYZLYNDKZQA","大成信用增利一年定开债券A","定开债券","DACHENGXINYONGZENGLIYINIANDINGKAIZHAIQUANA"],["000427","DCXYZLYNDKZQC","大成信用增利一年定开债券C","定开债券","DACHENGXINYONGZENGLIYINIANDINGKAIZHAIQUANC"],["000428","YFDJYFJZQFQS","易方达聚盈分级债券发起式","债券型","YIFANGDAJUYINGFENJIZHAIQUANFAQISHI"],["000429","YFDJYFJZQFQSA","易方达聚盈分级债券发起式A","固定收益","YIFANGDAJUYINGFENJIZHAIQUANFAQISHIA"],["000430","YFDJYFJZQFQSB","易方达聚盈分级债券发起式B","分级杠杆","YIFANGDAJUYINGFENJIZHAIQUANFAQISHIB"],["000431","PHPPCCHH","鹏华品牌传承混合","混合型","PENGHUAPINPAICHUANCHENGHUNHE"],["000432","ZYYXQYHH","中银优秀企业混合","混合型","ZHONGYINYOUXIUQIYEHUNHE"],["000433","AXXFYXHH","安信鑫发优选混合","混合型","ANXINXINFAYOUXUANHUNHE"],["000434","XHYNBHBA","新华壹诺宝货币A","货币型","XINHUAYINUOBAOHUOBIA"],["000435","JXWDTLZQA","建信稳定添利债券A","债券型","JIANXINWENDINGTIANLIZHAIQUANA"],["000436","YFDYHDKHHFQS","易方达裕惠定开混合发起式","混合型","YIFANGDAYUHUIDINGKAIHUNHEFAQISHI"],["000437","RTYYTLDKZQA","融通月月添利定开债券A","定开债券","RONGTONGYUEYUETIANLIDINGKAIZHAIQUANA"],["000438","RTYYTLDKZQB","融通月月添利定开债券B","定开债券","RONGTONGYUEYUETIANLIDINGKAIZHAIQUANB"],["000439","GJXYHB","国金鑫盈货币","货币型","GUOJINXINYINGHUOBI"],["000452","NFYB","南方医保","混合型","NANFANGYIBAO"],["000457","STMGHXCZ","上投摩根核心成长","股票型","SHANGTOUMOGENHEXINCHENGZHANG"],["000458","YDLXHBFQS","英大领先回报发起式","混合型","YINGDALINGXIANHUIBAOFAQISHI"],["000459","YDLXHBFQS","英大领先回报发起式(后端)","混合型","YINGDALINGXIANHUIBAOFAQISHI"],["000462","NYZTLDHH","农银主题轮动混合","混合型","NONGYINZHUTILUNDONGHUNHE"],["000463","HSSZFLZQA","华商双债丰利债券A","债券型","HUASHANGSHUANGZHAIFENGLIZHAIQUANA"],["000464","JSHQBHB","嘉实活期宝货币","货币型","JIASHIHUOQIBAOHUOBI"],["000465","JSCCXYXDQZFZQ","景顺长城鑫月薪定期支付债券","定开债券","JINGSHUNCHANGCHENGXINYUEXINDINGQIZHIFUZHAIQUAN"],["000466","RTTRZQAB","融通通瑞债券A/B","债券型","RONGTONGTONGRUIZHAIQUANAB"],["000467","XCHBZQA","信诚惠报债券A","债券型","XINCHENGHUIBAOZHAIQUANA"],["000469","FGMBQLYNQCZZQ","富国目标齐利一年期纯债债券","定开债券","FUGUOMUBIAOQILIYINIANQICHUNZHAIZHAIQUAN"],["000470","FGMBQLYNQCZZQ","富国目标齐利一年期纯债债券(后端)","定开债券","FUGUOMUBIAOQILIYINIANQICHUNZHAIZHAIQUAN"],["000471","FGCZFZGP","富国城镇发展股票","股票型","FUGUOCHENGZHENFAZHANGUPIAO"],["000472","FGCZFZGP","富国城镇发展股票(后端)","股票型","FUGUOCHENGZHENFAZHANGUPIAO"],["000473","GFJXZQA","广发集鑫债券A","债券型","GUANGFAJIXINZHAIQUANA"],["000474","GFJXZQC","广发集鑫债券C","债券型","GUANGFAJIXINZHAIQUANC"],["000475","GFTTLHBA","广发天天利货币A","货币型","GUANGFATIANTIANLIHUOBIA"],["000476","GFTTLHBB","广发天天利货币B","货币型","GUANGFATIANTIANLIHUOBIB"],["000477","GFZTLXHH","广发主题领先混合","混合型","GUANGFAZHUTILINGXIANHUNHE"],["000478","JXZZ500ZSZQ","建信中证500指数增强","股票指数","JIANXINZHONGZHENG500ZHISHUZENGQIANG"],["000479","XCHBZQB","信诚惠报债券B","债券型","XINCHENGHUIBAOZHAIQUANB"],["000480","DFHXDLHH","东方红新动力混合","混合型","DONGFANGHONGXINDONGLIHUNHE"],["000481","HSSZFLZQC","华商双债丰利债券C","债券型","HUASHANGSHUANGZHAIFENGLIZHAIQUANC"],["000483","XYHBA","鑫元货币A","货币型","XINYUANHUOBIA"],["000484","XYHBB","鑫元货币B","货币型","XINYUANHUOBIB"],["000485","JS1GYLCZQA","嘉实1个月理财债券A","理财型","JIASHI1GEYUELICAIZHAIQUANA"],["000486","JS1GYLCZQE","嘉实1个月理财债券E","理财型","JIASHI1GEYUELICAIZHAIQUANE"],["000487","JS3GYLCZQA","嘉实3个月理财债券A","理财型","JIASHI3GEYUELICAIZHAIQUANA"],["000488","JS3GYLCZQE","嘉实3个月理财债券E","理财型","JIASHI3GEYUELICAIZHAIQUANE"],["000489","GDBDXSMHLCZA","光大保德信岁末红利纯债A","债券型","GUANGDASUIMOHONGLICHUNZHAIA"],["000490","GDBDXSMHLCZC","光大保德信岁末红利纯债C","债券型","GUANGDASUIMOHONGLICHUNZHAIC"],["000493","NFXJTHBA","南方现金通货币A","货币型","NANFANGXIANJINTONGHUOBIA"],["000494","NFXJTHBB","南方现金通货币B","货币型","NANFANGXIANJINTONGHUOBIB"],["000495","NFXJTHBC","南方现金通货币C","货币型","NANFANGXIANJINTONGHUOBIC"],["000496","CACYJXHHA","长安产业精选混合A","混合型","CHANGANCHANYEJINGXUANHUNHEA"],["000497","CTCZZQ","财通纯债债券","债券型","CAITONGCHUNZHAIZHAIQUAN"],["000500","HFHFFJZQ","华富恒富分级债券","债券型","HUAFUHENGFUFENJIZHAIQUAN"],["000501","HFHFFJZQA","华富恒富分级债券A","固定收益","HUAFUHENGFUFENJIZHAIQUANA"],["000502","HFHFFJZQB","华富恒富分级债券B","分级杠杆","HUAFUHENGFUFENJIZHAIQUANB"],["000503","ZXJTWXYNA","中信建投稳信一年A","定开债券","ZHONGXINJIANTOUWENXINYINIANA"],["000504","ZXJTWXYNC","中信建投稳信一年C","定开债券","ZHONGXINJIANTOUWENXINYINIANC"],["000505","GSABHBA","国寿安保货币A","货币型","GUOSHOUANBAOHUOBIA"],["000506","GSABHBB","国寿安保货币B","货币型","GUOSHOUANBAOHUOBIB"],["000507","TDHLYLHHA","泰达宏利养老混合A","混合型","TAIDAHONGLIYANGLAOHUNHEA"],["000508","TDHLYLHHB","泰达宏利养老混合B","混合型","TAIDAHONGLIYANGLAOHUNHEB"],["000509","GFQDZHB","广发钱袋子货币","货币型","GUANGFAQIANDAIZIHUOBI"],["000510","NAYXSYYNDKZQ","诺安永鑫收益一年定开债券","定开债券","NUOANYONGXINSHOUYIYINIANDINGKAIZHAIQUAN"],["000511","GTGCQDLHPZHHA","国泰国策驱动灵活配置混合A","混合型","GUOTAIGUOCEQUDONGLINGHUOPEIZHIHUNHEA"],["000512","GTJGZXLHPZHHA","国泰结构转型灵活配置混合A","混合型","GUOTAIJIEGOUZHUANXINGLINGHUOPEIZHIHUNHEA"],["000513","FGGDZZHYGP","富国高端制造行业股票","股票型","FUGUOGAODUANZHIZAOHANGYEGUPIAO"],["000514","FGGDZZHYGP","富国高端制造行业股票(后端)","股票型","FUGUOGAODUANZHIZAOHANGYEGUPIAO"],["000520","SYXXJZCZHH","上银新兴价值成长混合","混合型","SHANGYINXINXINGJIAZHICHENGZHANGHUNHE"],["000522","HRYDXXCMKJHH","华润元大信息传媒科技混合","混合型","HUARUNYUANDAXINXICHUANMEIKEJIHUNHE"],["000523","GTRYYLBJHH","国投瑞银医疗保健混合","混合型","GUOTOURUIYINYILIAOBAOJIANHUNHE"],["000524","STMGMSXQ","上投摩根民生需求","股票型","SHANGTOUMOGENMINSHENGXUQIU"],["000526","GTNYLHPZHHA","国泰浓益灵活配置混合A","混合型","GUOTAINONGYILINGHUOPEIZHIHUNHEA"],["000527","NFXYX","南方新优享","混合型","NANFANGXINYOUXIANG"],["000528","GYXJHBA","工银薪金货币A","货币型","GONGYINXINJINHUOBIA"],["000529","GFJZYSHH","广发竞争优势混合","混合型","GUANGFAJINGZHENGYOUSHIHUNHE"],["000530","ZSFSWDZZHHA","招商丰盛稳定增长混合A","混合型","ZHAOSHANGFENGSHENGWENDINGZENGZHANGHUNHEA"],["000531","DWAEFLHPZHH","东吴阿尔法灵活配置混合","混合型","DONGWUAERFALINGHUOPEIZHIHUNHE"],["000532","JSCCYSQYHH","景顺长城优势企业混合","混合型","JINGSHUNCHANGCHENGYOUSHIQIYEHUNHE"],["000533","YYHB","永赢货币","货币型","YONGYINGHUOBI"],["000534","CSGDZBZZLHPZ","长盛高端装备制造灵活配置","混合型","CHANGSHENGGAODUANZHUANGBEIZHIZAOLINGHUOPEIZHI"],["000535","CSHTHGZBLHPZ","长盛航天海工装备灵活配置","混合型","CHANGSHENGHANGTIANHAIGONGZHUANGBEILINGHUOPEIZHI"],["000536","QHKYKZZZQ","前海开源可转债债券","债券型","QIANHAIKAIYUANKEZHUANZHAIZHAIQUAN"],["000538","NAYSHYHHA","诺安优势行业混合A","混合型","NUOANYOUSHIHANGYEHUNHEA"],["000539","ZYHQBHB","中银活期宝货币","货币型","ZHONGYINHUOQIBAOHUOBI"],["000540","GJJTTHBA","国金金腾通货币A","货币型","GUOJINJINTENGTONGHUOBIA"],["000541","HSCXCZLHPZ","华商创新成长灵活配置","混合型","HUASHANGCHUANGXINCHENGZHANGLINGHUOPEIZHI"],["000542","SYHCBHBA","上银慧财宝货币A","货币型","SHANGYINHUICAIBAOHUOBIA"],["000543","SYHCBHBB","上银慧财宝货币B","货币型","SHANGYINHUICAIBAOHUOBIB"],["000545","ZYHXJZLHH","中邮核心竞争力混合","混合型","ZHONGYOUHEXINJINGZHENGLIHUNHE"],["000546","XYDKZQA","兴业定开债券A","定开债券","XINGYEDINGKAIZHAIA"],["000547","JXJKMSHH","建信健康民生混合","混合型","JIANXINJIANKANGMINSHENGHUNHE"],["000549","HADGXJJGP","华安大国新经济股票","股票型","HUAANDAGUOXINJINGJIGUPIAO"],["000550","GFXDLHH","广发新动力混合","混合型","GUANGFAXINDONGLIHUNHE"],["000551","XCXFXFHH","信诚幸福消费混合","混合型","XINCHENGXINGFUXIAOFEIHUNHE"],["000552","ZJCZYNA","中加纯债一年A","定开债券","ZHONGJIACHUNZHAIYINIANA"],["000553","ZJCZYNC","中加纯债一年C","定开债券","ZHONGJIACHUNZHAIYINIANC"],["000554","ZGMJJ","中国梦基金","混合型","ZHONGGUOMENGJIJIN"],["000556","GTXJYHHA","国投新机遇混合A","混合型","GUOTOUXINJIYUHUNHEA"],["000557","GTXJYHHC","国投新机遇混合C","混合型","GUOTOUXINJIYUHUNHEC"],["000559","NATTBA","诺安天天宝A","货币型","NUOANTIANTIANBAOA"],["000560","NATTBE","诺安天天宝E","货币型","NUOANTIANTIANBAOE"],["000561","NFQYA","南方启元A","债券型","NANFANGQIYUANA"],["000562","NFQYC","南方启元C","债券型","NANFANGQIYUANC"],["000563","NFTLA","南方通利A","债券型","NANFANGTONGLIA"],["000564","NFTLC","南方通利C","债券型","NANFANGTONGLIC"],["000566","HTBRCXSJHH","华泰柏瑞创新升级混合","混合型","HUATAIBAIRUICHUANGXINSHENGJIHUNHE"],["000567","GFJXLHHH","广发聚祥灵活混合","混合型","GUANGFAJUXIANGLINGHUOHUNHE"],["000569","PHZZHB","鹏华增值宝货币","货币型","PENGHUAZENGZHIBAOHUOBI"],["000571","ZYSDLHH","中邮双动力混合","混合型","ZHONGYOUSHUANGDONGLIHUNHE"],["000572","ZYDCLHH","中银多策略混合","混合型","ZHONGYINDUOCELUEHUNHE"],["000573","THTLHH","天弘通利混合","混合型","TIANHONGTONGLIHUNHE"],["000574","BYXJZHH","宝盈新价值混合","混合型","BAOYINGXINJIAZHIHUNHE"],["000575","XQTLBHB","兴全添利宝货币","货币型","XINGQUANTIANLIBAOHUOBI"],["000576","ZYHBA","中邮货币A","货币型","ZHONGYOUHUOBIA"],["000577","AXJZJXGP","安信价值精选股票","股票型","ANXINJIAZHIJINGXUANGUPIAO"],["000578","XYYNDQKFZQA","鑫元一年定期开放债券A","定开债券","XINYUANYINIANDINGQIKAIFANGZHAIQUANA"],["000579","XYYNDQKFZQC","鑫元一年定期开放债券C","定开债券","XINYUANYINIANDINGQIKAIFANGZHAIQUANC"],["000580","ZYHBB","中邮货币B","货币型","ZHONGYOUHUOBIB"],["000581","JSHQBHBA","嘉实活钱包货币A","货币型","JIASHIHUOQIANBAOHUOBIA"],["000583","JXJF","江信聚福","定开债券","JIANGXINJUFU"],["000584","XHXYLHPZHH","新华鑫益灵活配置混合","混合型","XINHUAXINYILINGHUOPEIZHIHUNHE"],["000585","JSDCTLDQHH","嘉实对冲套利定期混合","混合型","JIASHIDUICHONGTAOLIDINGQIHUNHE"],["000586","JSZXBCYBJXGP","景顺中小板创业板精选股票","股票型","JINGSHUNZHONGXIAOBANCHUANGYEBANJINGXUANGUPIAO"],["000587","DCLHPZHH","大成灵活配置混合","混合型","DACHENGLINGHUOPEIZHIHUNHE"],["000588","ZSZQBHBA","招商招钱宝货币A","货币型","ZHAOSHANGZHAOQIANBAOHUOBIA"],["000589","GDBDXYFSJHH","光大保德信银发商机混合","混合型","GUANGDAYINFASHANGJIHUNHE"],["000590","HAXHLHH","华安新活力混合","混合型","HUAANXINHUOLIHUNHE"],["000591","ZYJKSHHH","中银健康生活混合","混合型","ZHONGYINJIANKANGSHENGHUOHUNHE"],["000592","JXGGHLGP","建信改革红利股票","股票型","JIANXINGAIGEHONGLIGUPIAO"],["000593","YFDBPXFPZSXH","易方达标普消费品指数现汇","QDII-指数","YIFANGDABIAOPUXIAOFEIPINZHISHUXIANHUI"],["000594","DMJQYXGP","大摩进取优选股票","股票型","DAMOJINQUYOUXUANGUPIAO"],["000595","JSTHHH","嘉实泰和混合","混合型","JIASHITAIHEHUNHE"],["000596","QHKYZZJGZSA","前海开源中证军工指数A","股票指数","QIANHAIKAIYUANZHONGZHENGJUNGONGZHISHUA"],["000597","ZHJJSYHH","中海积极收益混合","混合型","ZHONGHAIJIJISHOUYIHUNHE"],["000598","CSSTHJZTHH","长盛生态环境主题混合","混合型","CHANGSHENGSHENGTAIHUANJINGZHUTIHUNHE"],["000599","XCXJBHB","信诚薪金宝货币","货币型","XINCHENGXINJINBAOHUOBI"],["000600","HTFHJBHB","汇添富和聚宝货币","货币型","HUITIANFUHEJUBAOHUOBI"],["000601","HBCXYXHH","华宝创新优选混合","混合型","HUABAOCHUANGXINYOUXUANHUNHE"],["000602","FGSYBHB","富国收益宝货币","货币型","FUGUOSHOUYIBAOHUOBI"],["000603","YFDCXQDLHPZHH","易方达创新驱动灵活配置混合","混合型","YIFANGDACHUANGXINQUDONGLINGHUOPEIZHIHUNHE"],["000604","YHDLBHBA","银华多利宝货币A","货币型","YINHUADUOLIBAOHUOBIA"],["000605","YHDLBHBB","银华多利宝货币B","货币型","YINHUADUOLIBAOHUOBIB"],["000607","ZSZQBHBB","招商招钱宝货币B","货币型","ZHAOSHANGZHAOQIANBAOHUOBIB"],["000609","HSXLHLHPZHH","华商新量化灵活配置混合","混合型","HUASHANGXINLIANGHUALINGHUOPEIZHIHUNHE"],["000610","XHALYHBBHH","新华阿里一号保本混合","保本型","XINHUAALIYIHAOBAOBENHUNHE"],["000612","HBSTZGHH","华宝生态中国混合","混合型","HUABAOSHENGTAIZHONGGUOHUNHE"],["000613","GSABHS300ZS","国寿安保沪深300指数","股票指数","GUOSHOUANBAOHUSHEN300ZHISHU"],["000614","HADG30DAXLJ","华安德国30(DAX)联接","QDII-指数","HUAANDEGUO30(DAX)LIANJIE"],["000615","CCGZBHB","长城工资宝货币","货币型","CHANGCHENGGONGZIBAOHUOBI"],["000616","STMGYXZLZQA","上投摩根优信增利债券A","债券型","SHANGTOUMOGENYOUXINZENGLIZHAIQUANA"],["000617","STMGYXZLZQC","上投摩根优信增利债券C","债券型","SHANGTOUMOGENYOUXINZENGLIZHAIQUANC"],["000618","JSXJBHB","嘉实薪金宝货币","货币型","JIASHIXINJINBAOHUOBI"],["000619","DFHCYSJHH","东方红产业升级混合","混合型","DONGFANGHONGCHANYESHENGJIHUNHE"],["000620","YFDXJZLHBA","易方达现金增利货币A","货币型","YIFANGDAXIANJINZENGLIHUOBIA"],["000621","YFDXJZLHBB","易方达现金增利货币B","货币型","YIFANGDAXIANJINZENGLIHUOBIB"],["000622","HFHCFJZQ","华富恒财分级债券","债券型","HUAFUHENGCAIFENJIZHAIQUAN"],["000623","HFHCFJZQA","华富恒财分级债券A","固定收益","HUAFUHENGCAIFENJIZHAIQUANA"],["000624","HFHCFJZQB","华富恒财分级债券B","分级杠杆","HUAFUHENGCAIFENJIZHAIQUANB"],["000625","NATTBB","诺安天天宝B","货币型","NUOANTIANTIANBAOB"],["000626","DCFCBHBA","大成丰财宝货币A","货币型","DACHENGFENGCAIBAOHUOBIA"],["000627","DCFCBHBB","大成丰财宝货币B","货币型","DACHENGFENGCAIBAOHUOBIB"],["000628","DCGXJSCYGP","大成高新技术产业股票","股票型","DACHENGGAOXINJISHUCHANYEGUPIAO"],["000629","YXYFCZA","圆信永丰纯债A","债券型","YUANXINYONGFENGCHUNZHAIA"],["000630","YXYFCZC","圆信永丰纯债C","债券型","YUANXINYONGFENGCHUNZHAIC"],["000631","ZYJLFJZQ","中银聚利分级债券","债券型","ZHONGYINJULIFENJIZHAIQUAN"],["000632","ZYJLFJZQA","中银聚利分级债券A","固定收益","ZHONGYINJULIFENJIZHAIQUANA"],["000633","ZYJLFJZQB","中银聚利分级债券B","分级杠杆","ZHONGYINJULIFENJIZHAIQUANB"],["000634","FGTSLHPZHH","富国天盛灵活配置混合","混合型","FUGUOTIANSHENGLINGHUOPEIZHIHUNHE"],["000635","FGTSLHPZHH","富国天盛灵活配置混合(后端)","混合型","FUGUOTIANSHENGLINGHUOPEIZHIHUNHE"],["000638","FGFQBHB","富国富钱包货币","货币型","FUGUOFUQIANBAOHUOBI"],["000639","BYXRYLHH","宝盈祥瑞养老混合","混合型","BAOYINGXIANGRUIYANGLAOHUNHE"],["000640","NALCBHBA","诺安理财宝货币A","货币型","NUOANLICAIBAOHUOBIA"],["000641","RALCBHBB","诺安理财宝货币B","货币型","NUOANLICAIBAOHUOBIB"],["000642","HTFHBC","汇添富货币C","货币型","HUITIANFUHUOBIC"],["000644","ZSZJBHBA","招商招金宝货币A","货币型","ZHAOSHANGZHAOJINBAOHUOBIA"],["000645","HXXJBHB","华夏薪金宝货币","货币型","HUAXIAXINJINBAOHUOBI"],["000646","HRYDYLBJLHHH","华润元大医疗保健量化混合","混合型","HUARUNYUANDAYILIAOBAOJIANLIANGHUAHUNHE"],["000647","YFDCFKXHBA","易方达财富快线货币A","货币型","YIFANGDACAIFUKUAIXIANHUOBIA"],["000648","YFDCFKXHBB","易方达财富快线货币B","货币型","YIFANGDACAIFUKUAIXIANHUOBIB"],["000649","CCJXBBHH","长城久鑫保本混合","保本型","CHANGCHENGJIUXINBAOBENHUNHE"],["000650","HTFHBD","汇添富货币D","货币型","HUITIANFUHUOBID"],["000651","ZSZJBHBB","招商招金宝货币B","货币型","ZHAOSHANGZHAOJINBAOHUOBIB"],["000652","BSYLHH","博时裕隆混合","混合型","BOSHIYULONGHUNHE"],["000654","HSXRCYHH","华商新锐产业混合","混合型","HUASHANGXINRUICHANYEHUNHE"],["000655","XYWLZQ","鑫元稳利债券","债券型","XINYUANWENLIZHAIQUAN"],["000656","QHKYHS300ZS","前海开源沪深300指数","股票指数","QIANHAIKAIYUANHUSHEN300ZHISHU"],["000657","YHHQBHBA","银华活钱宝货币A","货币型","YINHUAHUOQIANBAOHUOBIA"],["000658","YHHQBHBB","银华活钱宝货币B","货币型","YINHUAHUOQIANBAOHUOBIB"],["000659","YHHQBHBC","银华活钱宝货币C","货币型","YINHUAHUOQIANBAOHUOBIC"],["000660","YHHQBHBD","银华活钱宝货币D","货币型","YINHUAHUOQIANBAOHUOBID"],["000661","YHHQBHBE","银华活钱宝货币E","货币型","YINHUAHUOQIANBAOHUOBIE"],["000662","YHHQBHBF","银华活钱宝货币F","货币型","YINHUAHUOQIANBAOHUOBIF"],["000663","GTRYMLZGHH","国投瑞银美丽中国混合","混合型","GUOTOURUIYINMEILIZHONGGUOHUNHE"],["000664","GLATYHHA","国联安通盈混合A","混合型","GUOLIANANTONGYINGHUNHEA"],["000665","BSXJSYHBB","博时现金收益货币B","货币型","BOSHIXIANJINSHOUYIHUOBIB"],["000667","GYJDSYHHFQA","工银绝对收益混合发起A","混合型","GONGYINJUEDUISHOUYIHUNHEFAQIA"],["000668","GSABZXZQA","国寿安保尊享债券A","债券型","GUOSHOUANBAOZUNXIANGZHAIQUANA"],["000669","GSABZXZQC","国寿安保尊享债券C","债券型","GUOSHOUANBAOZUNXIANGZHAIQUANC"],["000672","GYJDSYHHFQB","工银绝对收益混合发起B","混合型","GONGYINJUEDUISHOUYIHUNHEFAQIB"],["000674","ZHHXFJZQ","中海惠祥分级债券","债券型","ZHONGHAIHUIXIANGFENJIZHAIQUAN"],["000675","ZHHXFJZQA","中海惠祥分级债券A","固定收益","ZHONGHAIHUIXIANGFENJIZHAIQUANA"],["000676","ZHHXFJZQB","中海惠祥分级债券B","分级杠杆","ZHONGHAIHUIXIANGFENJIZHAIQUANB"],["000677","GYXJHB","工银现金货币","货币型","GONGYINXIANJINHUOBI"],["000678","HBXYXJBHBE","华宝兴业现金宝货币E","货币型","HUABAOXINGYEXIANJINBAOHUOBIE"],["000679","ZSFLLHPZHHA","招商丰利灵活配置混合A","混合型","ZHAOSHANGFENGLILINGHUOPEIZHIHUNHEA"],["000681","XDAYHGJA","信达澳银慧管家A","货币型","XINDAAOYINHUIGUANJIAA"],["000682","XDAYHGJC","信达澳银慧管家C","货币型","XINDAAOYINHUIGUANJIAC"],["000683","XDAYHGJE","信达澳银慧管家E","货币型","XINDAAOYINHUIGUANJIAE"],["000684","CSYLJKCYLHPZ","长盛养老健康产业灵活配置","混合型","CHANGSHENGYANGLAOJIANKANGCHANYELINGHUOPEIZHI"],["000685","STMGXJGLHB","上投摩根现金管理货币","货币型","SHANGTOUMOGENXIANJINGUANLIHUOBI"],["000686","JXJXBHBA","建信嘉薪宝货币A","货币型","JIANXINJIAXINBAOHUOBIA"],["000687","NFXJB","南方薪金宝","货币型","NANFANGXINJINBAO"],["000688","JSCCYJJXGP","景顺长城研究精选股票","股票型","JINGSHUNCHANGCHENGYANJIUJINGXUANGUPIAO"],["000689","QHKYXJJHH","前海开源新经济混合","混合型","QIANHAIKAIYUANXINJINGJIHUNHE"],["000690","QHKYDHYHH","前海开源大海洋混合","混合型","QIANHAIKAIYUANDAHAIYANGHUNHE"],["000692","HTFSLZQC","汇添富双利债券C","债券型","HUITIANFUSHUANGLIZHAIQUANC"],["000693","JXXJTLHBA","建信现金添利货币A","货币型","JIANXINXIANJINTIANLIHUOBIA"],["000694","XYHLZQ","鑫元鸿利债券","债券型","XINYUANHONGLIZHAIQUAN"],["000695","DCJYPWSYHH","大成景益平稳收益混合","混合型","DACHENGJINGYIPINGWENSHOUYIHUNHE"],["000696","HTFHBHYGP","汇添富环保行业股票","股票型","HUITIANFUHUANBAOHANGYEGUPIAO"],["000697","HTFYDHLGP","汇添富移动互联股票","股票型","HUITIANFUYIDONGHULIANGUPIAO"],["000698","BYKJ30HH","宝盈科技30混合","混合型","BAOYINGKEJI30HUNHE"],["000699","ZYXQBHB","中银薪钱包货币","货币型","ZHONGYINXINQIANBAOHUOBI"],["000700","TDHLHBB","泰达宏利货币B","货币型","TAIDAHONGLIHUOBIB"],["000701","JSCCJFHBA","景顺长城景丰货币A","货币型","JINGSHUNCHANGCHENGJINGFENGHUOBIA"],["000704","YFDTTZLHBA","易方达天天增利货币A","货币型","YIFANGDATIANTIANZENGLIHUOBIA"],["000705","YFDTTZLHBB","易方达天天增利货币B","货币型","YIFANGDATIANTIANZENGLIHUOBIB"],["000706","ZYDCLHH","中邮多策略混合","混合型","ZHONGYOUDUOCELUEHUNHE"],["000707","JSCCJFHBB","景顺长城景丰货币B","货币型","JINGSHUNCHANGCHENGJINGFENGHUOBIB"],["000708","HAAXHH","华安安享混合","混合型","HUAANANXIANGHUNHE"],["000709","HAHCTHB","华安汇财通货币","货币型","HUAANHUICAITONGHUOBI"],["000710","JYXJBHBA","交银现金宝货币A","货币型","JIAOYINXIANJINBAOHUOBIA"],["000711","JSYLBJGP","嘉实医疗保健股票","股票型","JIASHIYILIAOBAOJIANGUPIAO"],["000712","STMGTTBHBA","上投摩根天添宝货币A","货币型","SHANGTOUMOGENTIANTIANBAOHUOBIA"],["000713","STMGTTBHBB","上投摩根天添宝货币B","货币型","SHANGTOUMOGENTIANTIANBAOHUOBIB"],["000714","RAWJHBLHPZHH","诺安稳健回报灵活配置混合","混合型","NUOANWENJIANHUIBAOLINGHUOPEIZHIHUNHE"],["000715","MSJYJYLCYDE","民生加银家盈理财月度E","理财型","MINSHENGJIAYINJIAYINGLICAIYUEDUE"],["000716","GYXXJHBB","工银薪金货币B","货币型","GONGYINXINJINHUOBIB"],["000717","RTZXSDLLHPZHH","融通转型三动力灵活配置混合","混合型","RONGTONGZHUANXINGSANDONGLILINGHUOPEIZHIHUNHE"],["000718","RTZXSDLLHPZHH","融通转型三动力灵活配置混合(后端)","混合型","RONGTONGZHUANXINGSANDONGLILINGHUOPEIZHIHUNHE"],["000719","NFXJTE","南方现金通E","货币型","NANFANGXIANJINTONGE"],["000720","NFWL1NDKZQC","南方稳利1年定开债券C","定开债券","NANFANGWENLI1NIANDINGKAIZHAIQUANC"],["000721","XYHBA","兴业货币A","货币型","XINGYEHUOBIA"],["000722","XYHBB","兴业货币B","货币型","XINGYEHUOBIB"],["000723","JXWDTLZQC","建信稳定添利债券C","债券型","JIANXINWENDINGTIANLIZHAIQUANC"],["000724","DCTLBHBA","大成添利宝货币A","货币型","DACHENGTIANLIBAOHUOBIA"],["000725","DCTLBHBB","大成添利宝货币B","货币型","DACHENGTIANLIBAOHUOBIB"],["000726","DCTLBHBE","大成添利宝货币E","货币型","DACHENGTIANLIBAOHUOBIE"],["000727","RTJKCYLHPZHH","融通健康产业灵活配置混合","混合型","RONGTONGJIANKANGCHANYELINGHUOPEIZHIHUNHE"],["000728","GYMBSYYNDKZQ","工银目标收益一年定开债券","定开债券","GONGYINMUBIAOSHOUYIYINIANDINGKAIZHAI"],["000729","JXZXPXFGP","建信中小盘先锋股票","股票型","JIANXINZHONGXIAOPANXIANFENGGUPIAO"],["000730","BSXJBHBA","博时现金宝货币A","货币型","BOSHIXIANJINBAOHUOBIA"],["000731","RTJKCYLHPZHH","融通健康产业灵活配置混合(后端)","混合型","RONGTONGJIANKANGCHANYELINGHUOPEIZHIHUNHE"],["000734","BSTTZLHBA","博时天天增利货币A","货币型","BOSHITIANTIANZENGLIHUOBIA"],["000735","BSTTZLHBB","博时天天增利货币B","货币型","BOSHITIANTIANZENGLIHUOBIB"],["000736","NAJLZQA","诺安聚利债券A","债券型","NUOANJULIZHAIQUANA"],["000737","NAJLZQC","诺安聚利债券C","债券型","NUOANJULIZHAIQUANC"],["000738","ZXJTHB","中信建投货币","货币型","ZHONGXINJIANTOUHUOBI"],["000739","PADHXXXFA","平安大华新鑫先锋A","混合型","PINGANDAHUAXINXINXIANFENGA"],["000740","HFHBB","华福货币B","货币型","HUAFUHUOBIB"],["000741","HFHBA","华福货币A","货币型","HUAFUHUOBIA"],["000742","GTXJJLHPZHH","国泰新经济灵活配置混合","混合型","GUOTAIXINJINGJILINGHUOPEIZHIHUNHE"],["000743","HTHTSSPYHHFQS","红塔红土盛世普益混合发起式","混合型","HONGTAHONGTUSHENGSHIPUYIHUNHEFAQISHI"],["000744","BXRFWDSYA","北信瑞丰稳定收益A","债券型","BEIXINRUIFENGWENDINGSHOUYIA"],["000745","BXRFWDSYC","北信瑞丰稳定收益C","债券型","BEIXINRUIFENGWENDINGSHOUYIC"],["000746","ZSHYJXGP","招商行业精选股票","股票型","QIAOSHANGHANGYEJINGXUANGUPIAO"],["000747","GFNXCLHH","广发逆向策略混合","混合型","GUANGFANIXIANGCELUEHUNHE"],["000748","GFHQBHBA","广发活期宝货币A","货币型","GUANGFAHUOQIBAOHUOBIA"],["000749","GJXABB","国金鑫安保本","保本型","GUOJINXINANBAOBEN"],["000750","AXXJZL","安信现金增利","货币型","ANXINXIANJINZENGLI"],["000751","JSXXCYGP","嘉实新兴产业股票","股票型","JIASHIXINXINGCHANYEGUPIAO"],["000752","BSYSSYXYZQ","博时优势收益信用债券","债券型","BOSHIYOUSHISHOUYIXINYONGZHAIQUAN"],["000753","HBXYLHDCHHA","华宝兴业量化对冲混合A","混合型","HUABAOXINGYELIANGHUADUICHONGHUNHEA"],["000754","HBXYLHDCHHC","华宝兴业量化对冲混合C","混合型","HUABAOXINGYELIANGHUADUICHONGHUNHEC"],["000755","FADXXCZHH","富安达新兴成长混合","混合型","FUANDAXINXINGCHENGZHANGHUNHE"],["000756","JXQLXLCGP","建信潜力新蓝筹股票","股票型","JIANXINQIANLIXINLANCHOUGUPIAO"],["000757","HFZHCSLHPZHH","华富智慧城市灵活配置混合","混合型","HUAFUZHIHUICHENGSHILINGHUOPEIZHIHUNHE"],["000758","ZSZQBHBC","招商招钱宝货币C","货币型","ZHAOSHANGZHAOQIANBAOHUOBIC"],["000759","PADHCFBHB","平安大华财富宝货币","货币型","PINGANDAHUACAIFUBAOHUOBI"],["000760","GYCFHBA","工银财富货币A","货币型","GONGYINCAIFUHUOBIA"],["000761","GFJKYZSHGP","国富健康优质生活股票","股票型","GUOFUJIANKANGYOUZHISHENGHUOGUPIAO"],["000762","HTFJDSYDKHH","汇添富绝对收益定开混合","混合型","HUITIANFUJUEDUISHOUYIDINGKAIHUNHE"],["000763","GYXCFLHPZHH","工银新财富灵活配置混合","混合型","GONGYINXINCAIFULINGHUOPEIZHIHUNHE"],["000764","WJHBE","万家货币E","货币型","WANJIAHUOBIE"],["000765","STSSYDKZQB","上投岁岁盈定开债券B","定开债券","SHANGTOUSUISUIYINGDINGKAIZHAIQUANB"],["000766","STSSYDKZQD","上投岁岁盈定开债券D","定开债券","SHANGTOUSUISUIYINGDINGKAIZHAIQUAND"],["000767","HFGTMALHPZHH","华富国泰民安灵活配置混合","混合型","HUAFUGUOTAIMINANLINGHUOPEIZHIHUNHE"],["000768","CCJYCZFJZQ","长城久盈纯债分级债券","债券型","CHANGCHENGJIUYINGCHUNZHAIFENJIZHAIQUAN"],["000769","CCJYCZFJZQA","长城久盈纯债分级债券A","固定收益","CHANGCHENGJIUYINGCHUNZHAIFENJIZHAIQUANA"],["000770","CCJYCZFJZQB","长城久盈纯债分级债券B","分级杠杆","CHANGCHENGJIUYINGCHUNZHAIFENJIZHAIQUANB"],["000771","NAJXBHBA","诺安聚鑫宝货币A","货币型","NUOANJUXINBAOHUOBIA"],["000772","JSCCZGHBLLPZ","景顺长城中国回报灵活配置","混合型","JINGSHUNCHANGCHENGZHONGGUOHUIBAOLINGHUOPEIZHI"],["000773","WJXJB","万家现金宝","货币型","WANJIAXIANJINBAO"],["000774","THRLFJZQ","天弘瑞利分级债券","债券型","TIANHONGRUILIFENJIZHAIQUAN"],["000775","THRLFJZQA","天弘瑞利分级债券A","固定收益","TIANHONGRUILIFENJIZHAIQUANA"],["000776","THRLFJZQB","天弘瑞利分级债券B","分级杠杆","TIANHONGRUILIFENJIZHAIQUANB"],["000778","PHXJZZGP","鹏华先进制造股票","股票型","PENGHUAXIANJINZHIZAOGUPIAO"],["000779","NAJXBHBB","诺安聚鑫宝货币B","货币型","NUOANJUXINBAOHUOBIB"],["000780","PHYLBJGP","鹏华医疗保健股票","股票型","PENGHUAYILIAOBAOJIANGUPIAO"],["000781","GTSZLYNDKZQA","国投岁增利一年定开债券A","定开债券","GUOTOUSUIZENGLIYINIANDINGKAIZHAIQUANA"],["000782","GTSZLYNDKZQC","国投岁增利一年定开债券C","定开债券","GUOTOUSUIZENGLIYINIANDINGKAIZHAIQUANC"],["000783","BSYYYDQLCZQA","博时月月盈短期理财债券A","理财型","BOSHIYUEYUEYINGDUANQILICAIZHAIQUANA"],["000784","BSYYYDQLCZQR","博时月月盈短期理财债券R","理财型","BOSHIYUEYUEYINGDUANQILICAIZHAIQUANR"],["000785","HRXJZLHBA","华融现金增利货币A","货币型","HUARONGXIANJINZENGLIHUOBIA"],["000786","HRXJZLHBB","华融现金增利货币B","货币型","HUARONGXIANJINZENGLIHUOBIB"],["000787","HRXJZLHBC","华融现金增利货币C","货币型","HUARONGXIANJINZENGLIHUOBIC"],["000788","QHKYZGCZHH","前海开源中国成长混合","混合型","QIANHAIKAIYUANZHONGGUOCHENGZHANGHUNHE"],["000789","YFDLBHBA","易方达龙宝货币A","货币型","YIFANGDALONGBAOHUOBIA"],["000790","YFDLBHBB","易方达龙宝货币B","货币型","YIFANGDALONGBAOHUOBIB"],["000791","YHSYDQLCZQ","银华双月定期理财债券","理财型","YINHUASHUANGYUEDINGQILICAIZHAIQUAN"],["000793","GYGDZZGP","工银高端制造股票","股票型","GONGYINGAODUANZHIZAOGUPIAO"],["000794","BYRFCXHHA","宝盈睿丰创新混合A","混合型","BAOYINGRUIFENGCHUANGXINHUNHEA"],["000795","BYRFCXHHA","宝盈睿丰创新混合A(后端)","混合型","BAOYINGRUIFENGCHUANGXINHUNHEA"],["000796","BYRFCXHHC","宝盈睿丰创新混合C","混合型","BAOYINGRUIFENGCHUANGXINHUNHEC"],["000797","FZFBZXBHB","方正富邦金小宝货币","货币型","FANGZHENGFUBANGJINXIAOBAOHUOBI"],["000800","HSWLZTHH","华商未来主题混合","混合型","HUASHANGWEILAIZHUTIHUNHE"],["000801","ZJCZA","中金纯债A","债券型","ZHONGJINCHUNZHAIA"],["000802","ZJCZC","中金纯债C","债券型","ZHONGJINCHUNZHAIC"],["000803","GYYJJXGP","工银研究精选股票","股票型","GONGYINYANJIUJINGXUANGUPIAO"],["000804","ZXJTWLBB","中信建投稳利保本","保本型","ZHONGXINJIANTOUWENLIBAOBEN"],["000805","ZYXJJLHPZHH","中银新经济灵活配置混合","混合型","ZHONGYINXINJINGJILINGHUOPEIZHIHUNHE"],["000808","ZSZL1GYQLCZQA","招商招利1个月期理财债券A","理财型","ZHAOSHANGZHAOLI1GEYUEQILICAIZHAIQUANA"],["000809","ZSZL1GYQLCZQB","招商招利1个月期理财债券B","理财型","ZHAOSHANGZHAOLI1GEYUEQILICAIZHAIQUANB"],["000810","FGSYZQZQA","富国收益增强债券A","债券型","FUGUOSHOUYIZENGQIANGZHAIQUANA"],["000812","FGSYZQZQC","富国收益增强债券C","债券型","FUGUOSHOUYIZENGQIANGZHAIQUANC"],["000813","XYHXFJZQ","鑫元合享分级债券","债券型","XINYUANHEXIANGFENJIZHAIQUAN"],["000814","XYHXFJZQA","鑫元合享分级债券A","固定收益","XINYUANHEXIANGFENJIZHAIQUANA"],["000815","XYHXFJZQB","鑫元合享分级债券B","分级杠杆","XINYUANHEXIANGFENJIZHAIQUANB"],["000816","NFLCJJYXHBA","南方理财金交易型货币A","货币型","NANFANGLICAIJINJIAOYIXINGHUOBIA"],["000817","ZYAXHB","中银安心回报","定开债券","ZHONGYINANXINHUIBAO"],["000818","NATTBC","诺安天天宝C","货币型","NUOANTIANTIANBAOC"],["000822","DHMLZGLHPZ","东海美丽中国灵活配置","混合型","DONGHAIMEILIZHONGGUOLINGHUOPEIZHI"],["000823","YHGDZZY","银华高端制造业","混合型","YINHUAGAODUANZHIZAOYE"],["000824","YXYFSHLA","圆信永丰双红利A","混合型","YUANXINYONGFENGSHUANGHONGLIA"],["000825","YXYFSHLC","圆信永丰双红利C","混合型","YUANXINYONGFENGSHUANGHONGLIC"],["000826","GFBF100ZSA","广发百发100指数A","股票指数","GUANGFABAIFA100ZHISHUA"],["000827","GFBF100ZSE","广发百发100指数E","股票指数","GUANGFABAIFA100ZHISHUE"],["000828","TDZXJY","泰达转型机遇","股票型","TAIDAZHUANXINGJIYU"],["000829","YFDTTFHBA","易方达天天发货币A","货币型","YIFANGDATIANTIANFAHUOBIA"],["000830","YFDTTFHBB","易方达天天发货币B","货币型","YIFANGDATIANTIANFAHUOBIB"],["000831","GYYLBJ","工银医疗保健","股票型","GONGYINYILIAOBAOJIAN"],["000832","THXJGJHBC","天弘现金管家货币C","货币型","TIANHONGXIANJINGUANJIAHUOBIC"],["000834","DCNSDK100ZS","大成纳斯达克100指数","QDII-指数","DACHENGNASIDAKE100ZHISHU"],["000835","HRYDFSZGA50ZS","华润元大富时中国A50指数","股票指数","HUARUNYUANDAFUSHIZHONGGUOA50ZHISHU"],["000836","GTRYQDBHBA","国投瑞银钱多宝货币A","货币型","GUOTOURUIYINQIANDUOBAOHUOBIA"],["000837","GTRYQDBHBI","国投瑞银钱多宝货币I","货币型","GUOTOURUIYINQIANDUOBAOHUOBII"],["000839","STMGCZFLZQA","上投摩根纯债丰利债券A","债券型","SHANGTOUMOGENCHUNZHAIFENGLIZHAIQUANA"],["000840","STMGCZFLZQC","上投摩根纯债丰利债券C","债券型","SHANGTOUMOGENCHUNZHAIFENGLIZHAIQUANC"],["000841","FGXHBLHPZA","富国新回报灵活配置A","混合型","FUGUOXINHUIBAOLINGHUOPEIZHIA"],["000842","FGXHBLHPZA","富国新回报灵活配置A(后端)","混合型","FUGUOXINHUIBAOLINGHUOPEIZHIA"],["000843","FGXHBLHPZC","富国新回报灵活配置C","混合型","FUGUOXINHUIBAOLINGHUOPEIZHIC"],["000844","NFJDSY","南方绝对收益","混合型","NANFANGJUEDUISHOUYI"],["000845","GTRYXXXFHH","国投瑞银信息消费混合","混合型","GUOTOURUIYINXINXIXIAOFEIHUNHE"],["000846","ZRHBC","中融货币C","货币型","ZHONGRONGHUOBIC"],["000847","ZRHBA","中融货币A","货币型","ZHONGRONGHUOBIA"],["000848","GYTYKXHB","工银添益快线货币","货币型","GONGYINTIANYIKUAIXIANHUOBI"],["000849","HFJXSHCLA","汇丰晋信双核策略A","混合型","HUIFENGJINXINSHUANGHECELUEA"],["000850","HFJXSHCLC","汇丰晋信双核策略C","混合型","HUIFENGJINXINSHUANGHECELUEC"],["000854","PHYLCY","鹏华养老产业","股票型","PENGHUAYANGLAOCHANYE"],["000855","STMGTTYHBA","上投摩根天添盈货币A","货币型","SHANGTOUMOGENTIANTIANYINGHUOBIA"],["000856","STMGTTYHBB","上投摩根天添盈货币B","货币型","SHANGTOUMOGENTIANTIANYINGHUOBIB"],["000857","STMGTTYHBE","上投摩根天添盈货币E","货币型","SHANGTOUMOGENTIANTIANYINGHUOBIE"],["000858","RTTRZQAB","融通通瑞债券A/B(后端)","债券型","RONGTONGTONGRUIZHAIQUANAB"],["000859","RTTRZQC","融通通瑞债券C","债券型","RONGTONGTONGRUIZHAIQUANC"],["000860","YHHZLHB","银华惠增利货币","货币型","YINHUAHUIZENGLIHUOBI"],["000861","CCHBE","长城货币E","货币型","CHANGCHENGHUOBIE"],["000862","FGTSHBC","富国天时货币C","货币型","FUGUOTIANSHIHUOBIC"],["000863","FGTSHBD","富国天时货币D","货币型","FUGUOTIANSHIHUOBID"],["000865","DCJLHH","大成景利混合","混合型","DACHENGJINGLIHUNHE"],["000866","HBXYZZ","华宝兴业制造","股票型","HUABAOXINGYEZHIZAO"],["000867","HBPZSHGP","华宝品质生活股票","股票型","HUABAOPINZHISHENGHUOGUPIAO"],["000868","GTRYZLBHBA","国投瑞银增利宝货币A","货币型","GUOTOURUIYINZENGLIBAOHUOBIA"],["000869","GTRYZLBHBB","国投瑞银增利宝货币B","货币型","GUOTOURUIYINZENGLIBAOHUOBIB"],["000870","JSXSYHH","嘉实新收益混合","混合型","JIASHIXINSHOUYIHUNHE"],["000871","BXRFYTBA","北信瑞丰宜投宝A","货币型","BEIXINRUIFENGYITOUBAOA"],["000872","BXRFYTBB","北信瑞丰宜投宝B","货币型","BEIXINRUIFENGYITOUBAOB"],["000873","HAXJBHBA","华安现金宝货币A","货币型","HUAANXIANJINBAOHUOBIA"],["000874","HAXJBHBB","华安现金宝货币B","货币型","HUAANXIANJINBAOHUOBIB"],["000875","JXWDDLZQA","建信稳定得利债券A","债券型","JIANXINWENDINGDELIZHAIQUANA"],["000876","JXWDDLZQC","建信稳定得利债券C","债券型","JIANXINWENDINGDELIZHAIQUANC"],["000877","HTBRLHYXHH","华泰柏瑞量化优选混合","混合型","HUATAIBAIRUILIANGHUAYOUXUANHUNHE"],["000878","ZHYYJKCYHHA","中海医药健康产业混合A","混合型","ZHONGHAIYIYAOJIANKANGCHANYEHUNHEA"],["000879","ZHYYJKCYHHC","中海医药健康产业混合C","混合型","ZHONGHAIYIYAOJIANKANGCHANYEHUNHEC"],["000880","FGYJJXLHPZ","富国研究精选灵活配置","混合型","FUGUOYANJIUJINGXUANLINGHUOPEIZHI"],["000882","ZJXJGJA","中金现金管家A","货币型","ZHONGJINXIANJINGUANJIAA"],["000883","ZJXJGJB","中金现金管家B","货币型","ZHONGJINXIANJINGUANJIAB"],["000884","MSJYYX","民生加银优选","股票型","MINSHENGJIAYINYOUXUAN"],["000885","GFQQNYZSMYXH","广发全球农业指数美元现汇","QDII-指数","GUANGFAQUANQIUNONGYEZHISHUMEIYUANXIANHUI"],["000886","BXRFWXHLZTLHPZ","北信瑞丰无限互联主题灵活配置","混合型","BEIXINRUIFENGWUXIANHULIANZHUTILINGHUOPEIZHI"],["000887","STMGWJHBHH","上投摩根稳进回报混合","混合型","SHANGTOUMOGENWENJINHUIBAOHUNHE"],["000889","STMGCZTLZQA","上投摩根纯债添利债券A","债券型","SHANGTOUMOGENCHUNZHAITIANLIZHAIQUANA"],["000890","STMGCZTLZQC","上投摩根纯债添利债券C ","债券型","SHANGTOUMOGENCHUNZHAITIANLIZHAIQUANC"],["000891","BSXJBHBB","博时现金宝货币B","货币型","BOSHIXIANJINBAOHUOBIB"],["000892","JTTBLHPZHHA","九泰天宝灵活配置混合A","混合型","JIUTAITIANBAOLINGHUOPEIZHIHUNHEA"],["000893","GYCXDL","工银创新动力","股票型","GONGYINCHUANGXINDONGLI"],["000894","ZORDDQKF","中欧睿达定期开放","混合型","ZHONGOURUIDADINGQIKAIFANG"],["000895","GSABXJBHB","国寿安保薪金宝货币","货币型","GUOSHOUANBAOXINJINBAOHUOBI"],["000896","XYBNDQKFZQA","鑫元半年定期开放债券A","定开债券","XINYUANBANNIANDINGQIKAIFANGZHAIQUANA"],["000897","XYBNDQKFZQC","鑫元半年定期开放债券C","定开债券","XINYUANBANNIANDINGQIKAIFANGZHAIQUANC"],["000898","HFHWCZZQA","华富恒稳纯债债券A","债券型","HUAFUHENGWENCHUNZHAIZHAIQUANA"],["000899","HFHWCZZQC","华富恒稳纯债债券C ","债券型","HUAFUHENGWENCHUNZHAIZHAIQUANC"],["000900","XHAXYHBBHH","新华阿鑫一号保本","保本型","XINHUAAXINYIHAOBAOBEN"],["000901","GKHBA","国开货币A","货币型","GUOKAIHUOBIA"],["000902","GKHBB","国开货币B","货币型","GUOKAIHUOBIB"],["000903","XHHQTLHBA","新华活期添利货币A","货币型","XINHUAHUOQITIANLIHUOBIA"],["000904","YHHBLHPZDQKFHH","银华回报灵活配置定期开放混合","混合型","YINHUAHUIBAOLINGHUOPEIZHIDINGQIKAIFANGHUNHE"],["000905","PHAYBHB","鹏华安盈宝货币","货币型","PENGHUAANYINGBAOHUOBI"],["000906","GFQQJXGPMYXH","广发全球精选股票美元现汇","QDII","GUANGFAQUANQIUJINGXUANGUPIAOMEIYUANXIANHUI"],["000907","NYHLHLRJHBA","农银汇理红利日结货币A","货币型","NONGYINHUILIHONGLIRIJIEHUOBIA"],["000908","NYHLHLRJBBB","农银汇理红利日结货币B","货币型","NONGYINHUILIHONGLIRIJIEHUOBIB"],["000910","XYHFCZC","鑫元合丰纯债C","债券型","XINYUANHEFENGCHUNZHAIC"],["000911","XYHFCZA","鑫元合丰纯债A","债券型","XINYUANHEFENGCHUNZHAIA"],["000912","YDXJBHB","英大现金宝货币","货币型","YINGDAXIANJINBAOHUOBI"],["000913","NYYLBJGP","农银医疗保健股票","股票型","NONGYINYILIAOBAOJIANGUPIAO"],["000914","ZJCZZQ","中加纯债债券","固定收益","ZHONGJIACHUNZHAIZHAIQUAN"],["000916","QHKYGXL100QGP","前海开源股息率100强股票","股票型","QIANHAIKAIYUANGUXILV100QIANGGUPIAO"],["000917","JSKXHBA","嘉实快线货币A","货币型","JIASHIKUAIXIANHUOBIA"],["000918","JSKXHBB","嘉实快线货币B","货币型","JIASHIKUAIXIANHUOBIB"],["000919","JSKXHBC","嘉实快线货币C","货币型","JIASHIKUAIXIANHUOBIC"],["000920","YFDCFKXHBY","易方达财富快线货币Y ","货币型","YIFANGDACAIFUKUAIXIANHUOBIY"],["000921","ZYXJYZA","中邮现金驿站A","货币型","ZHONGYOUXIANJINYIZHANA"],["000922","ZYXJYZB","中邮现金驿站B","货币型","ZHONGYOUXIANJINYIZHANB"],["000923","ZYXJYZC","中邮现金驿站C","货币型","ZHONGYOUXIANJINYIZHANC"],["000924","BYXJZZHH","宝盈先进制造混合","混合型","BAOYINGXIANJINZHIZAOHUNHE"],["000925","HTFWYZZZT","汇添富外延增长主题","股票型","HUITIANFUWAIYANZENGZHANGZHUTI"],["000926","ZXJTRX","中信建投睿信","混合型","ZHONGXINJIANTOURUIXIN"],["000927","BSDZHYTJXMYXH","博时大中华亚太精选美元现汇","QDII","BOSHIDAZHONGHUAYATAIJINGXUANMEIYUANXIANHUI"],["000928","ZRGQGGHH","中融国企改革混合","混合型","ZHONGRONGGUOQIGAIGEHUNHE"],["000929","BSHJETFD","博时黄金ETFD","混合型","BOSHIHUANGJINETFD"],["000930","BSHJETFI","博时黄金ETFI","混合型","BOSHIHUANGJINETFI"],["000931","GSABZYXYCZYN","国寿安保尊益信用纯债一年","定开债券","GUOSHOUANBAOZUNYIXINYONGCHUNZHAIYINIAN"],["000932","QHKYRYWJZLHHA","前海开源睿远稳健增利混合A","混合型","QIANHAIKAIYUANRUIYUANWENJIANZENGLIHUNHEA"],["000933","QHKYRYWJZLHHC","前海开源睿远稳健增利混合C","混合型","QIANHAIKAIYUANRUIYUANWENJIANZENGLIHUNHEC"],["000934","GFDZHJXHH","国富大中华精选混合","QDII","GUOFUDAZHONGHUAJINGXUANHUNHE"],["000935","HJZXCZ","汇金转型成长","混合型","HUIJINZHUANXINGCHENGZHANG"],["000936","BSCYXDLHH","博时产业新动力混合","混合型","BOSHICHANYEXINDONGLIHUNHE"],["000937","HSWGTLZQA","华商稳固添利债券A","债券型","HUASHANGWENGUTIANLIZHAIQUANA"],["000938","HSWGTLZQC","华商稳固添利债券C","债券型","HUASHANGWENGUTIANLIZHAIQUANC"],["000939","ZYYJJXLHPZHH","中银研究精选灵活配置混合","混合型","ZHONGYINYANJIUJINGXUANLINGHUOPEIZHIHUNHE"],["000940","FGZXPJXHH","富国中小盘精选混合","混合型","FUGUOZHONGXIAOPANJINGXUANHUNHE"],["000942","GFXXJSLJA","广发信息技术联接A","联接基金","GUANGFAXINXIJISHULIANJIEA"],["000943","GYZGDJXYZZQA","工银中高等级信用债债券A","债券型","GONGYINZHONGGAODENGJIXINYONGZHAIZHAIQUANA"],["000944","GYZGDJXYZZQB","工银中高等级信用债债券B","债券型","GONGYINZHONGGAODENGJIXINYONGZHAIZHAIQUANB"],["000945","HXYLJKHHA","华夏医疗健康混合A","混合型","HUAXIAYILIAOJIANKANGHUNHEA"],["000946","HXYLJKHHC","华夏医疗健康混合C","混合型","HUAXIAYILIAOJIANKANGHUNHEC"],["000947","DBCZZQA","德邦纯债债券A","债券型","DEBANGCHUNZHAIZHAIQUANA"],["000948","HXHGTHSETFLJ","华夏沪港通恒生ETF联接","QDII-指数","HUAXIAHUGANGTONGHENGSHENGETFLIANJIE"],["000950","YFDHS300FYETFLJ","易方达沪深300非银ETF联接","联接基金","YIFANGDAHUSHEN300FEIYINETFLIANJIE"],["000951","ZYLC90TZQA","中银理财90天债券A","理财型","ZHONGYINLICAI90TIANZHAIQUANA"],["000952","ZYLC90TZQB","中银理财90天债券B","理财型","ZHONGYINLICAI90TIANZHAIQUANB"],["000953","GTRJLHPZHHA","国泰睿吉灵活配置混合A","混合型","GUOTAIRUIJILINGHUOPEIZHIHUNHEA"],["000954","GTRJLHPZHHC","国泰睿吉灵活配置混合C","混合型","GUOTAIRUIJILINGHUOPEIZHIHUNHEC"],["000955","NFCYHL","南方产业活力","股票型","NANFANGCHANYEHUOLI"],["000958","DWDYA","东吴鼎元A","债券型","DONGWUDINGYUANA"],["000959","DWDYC","东吴鼎元C","债券型","DONGWUDINGYUANC"],["000960","ZSYYJKCYGP","招商医药健康产业股票","股票型","ZHAOSHANGYIYAOJIANKANGCHANYEGUPIAO"],["000961","THHS300ZS","天弘沪深300指数","股票指数","TIANHONGHUSHEN300ZHISHU"],["000962","THZZ500ZS","天弘中证500指数","股票指数","TIANHONGZHONGZHENG500ZHISHU"],["000963","XYDCLHH","兴业多策略混合","混合型","XINGYEDUOCELUEHUNHE"],["000965","HFJXXDLHH","汇丰晋信新动力混合","混合型","HUIFENGJINXINXINDONGLIHUNHE"],["000966","ZYHXKJCXLHPZHH","中邮核心科技创新灵活配置混合","混合型","ZHONGYOUHEXINKEJICHUANGXINLINGHUOPEIZHIHUNHE"],["000967","HTBRCXDLHH","华泰柏瑞创新动力混合","混合型","HUATAIBAIRUICHUANGXINDONGLIHUNHE"],["000968","GFYLZSA","广发养老指数A","股票指数","GUANGFAYANGLAOZHISHUA"],["000969","QHKYDAQHH","前海开源大安全混合","混合型","QIANHAIKAIYUANDAANQUANHUNHE"],["000970","DFHRYHH","东方红睿元混合","混合型","DONGFANGHONGRUIYUANHUNHE"],["000971","NAXJJGP","诺安新经济股票","股票型","NUOANXINJINGJIGUPIAO"],["000972","XHWYCLLHPZHH","新华万银策略灵活配置混合","混合型","XINHUAWANYINCELUELINGHUOPEIZHIHUNHE"],["000973","XHZYHBZQ","新华增盈回报债券","债券型","XINHUAZENGYINGHUIBAOZHAIQUAN"],["000974","AXXFYYGP","安信消费医药股票","股票型","ANXINXIAOFEIYIYAOGUPIAO"],["000975","MSCIZGAGETFLJ","MSCI中国A股ETF联接","联接基金","MSCIZHONGGUOAGUETFLIANJIE"],["000976","CCXXCYHH","长城新兴产业混合","混合型","CHANGCHENGXINXINGCHANYEHUNHE"],["000977","CCHBZTHH","长城环保主题混合","混合型","CHANGCHENGHUANBAOZHUTIHUNHE"],["000978","JSCCLHJXGP","景顺长城量化精选股票","股票型","JINGSHUNCHANGCHENGLIANGHUAJINGXUANGUPIAO"],["000979","JSCCHGSJXGP","景顺长城沪港深精选股票","股票型","JINGSHUNCHANGCHENGHUGANGSHENJINGXUANGUPIAO"],["000980","HTFTFTHBB","汇添富添富通货币B","货币型","HUITIANFUTIANFUTONGHUOBIB"],["000981","BXRFXJTLA","北信瑞丰现金添利A","货币型","BEIXINRUIFENGXIANJINTIANLIA"],["000982","BXRFXJTLB","北信瑞丰现金添利B","货币型","BEIXINRUIFENGXIANJINTIANLIB"],["000984","MSJYXSYZQA","民生加银新收益债券A","债券型","MINSHENGJIAYINXINSHOUYIZHAIQUANA"],["000985","JSNXCLGP","嘉实逆向策略股票","股票型","JIASHINIXIANGCELUEGUPIAO"],["000986","TPLHPZ","太平灵活配置","混合型","TAIPINGLINGHUOPEIZHI"],["000987","MSJYXSYZQC","民生加银新收益债券C","债券型","MINSHENGJIAYINXINSHOUYIZHAIQUANC"],["000988","JSQQHLWGPRMB","嘉实全球互联网股票人民币","QDII","JIASHIQUANQIUHULIANWANGGUPIAORENMINBI"],["000989","JSQQHLWGPMYXH","嘉实全球互联网股票美元现汇","QDII","JIASHIQUANQIUHULIANWANGGUPIAOMEIYUANXIANHUI"],["000990","JSQQHLWGPMYXC","嘉实全球互联网股票美元现钞","QDII","JIASHIQUANQIUHULIANWANGGUPIAOMEIYUANXIANCHAO"],["000991","GYZLZXGP","工银战略转型股票","股票型","GONGYINZHANLUEZHUANXINGGUPIAO"],["000992","GFDCTLDQKFHH","广发对冲套利定期开放混合","混合型","GUANGFADUICHONGTAOLIDINGQIKAIFANGHUNHE"],["000993","HBWJHBHH","华宝稳健回报混合","混合型","HUABAOWENJIANHUIBAOHUNHE"],["000994","JXRYLHPZHHA","建信睿盈灵活配置混合A","混合型","JIANXINRUIYINGLINGHUOPEIZHIHUNHEA"],["000995","JXRYLHPZHHC","建信睿盈灵活配置混合C","混合型","JIANXINRUIYINGLINGHUOPEIZHIHUNHEC"],["000996","ZYXDLGP","中银新动力股票","股票型","ZHONGYINXINDONGLIGUPIAO"],["000997","NFSYA","南方双元A","债券型","NANFANGSHUANGYUANA"],["000998","NFSYC","南方双元C","债券型","NANFANGSHUANGYUANC"],["001000","ZOMRXQDHH","中欧明睿新起点混合","混合型","ZHONGOUMINGRUIXINQIDIANHUNHE"],["001001","HXZQA/B","华夏债券A/B","债券型","HUAXIAZHAIQUANAB"],["001002","HXZQA/B","华夏债券A/B(后端)","债券型","HUAXIAZHAIQUANAB"],["001003","HXZQC","华夏债券C","债券型","HUAXIAZHAIQUANC"],["001004","XHWJHBHHFQS","新华稳健回报混合发起式","混合型","XINHUAWENJIANHUIBAOHUNHEFAQISHI"],["001005","ZHHXHH","中海合鑫混合","混合型","ZHONGHAIHEXINHUNHE"],["001006","ZXJTFHHB","中信建投凤凰货币","货币型","ZHONGXINJIANTOUFENGHUANGHUOBI"],["001007","GLAXALHPZHH","国联安鑫安灵活配置混合","混合型","GUOLIANANXINANLINGHUOPEIZHIHUNHE"],["001008","GYGQGGGP","工银国企改革股票","股票型","GONGYINGUOQIGAIGEGUPIAO"],["001009","STMGAQZLGP","上投摩根安全战略股票","股票型","SHANGTOUMOGENANQUANZHANLUEGUPIAO"],["001010","YFDZJBHB","易方达增金宝货币","货币型","YIFANGDAZENGJINBAOHUOBI"],["001011","HXXWZQA","华夏希望债券A","债券型","HUAXIAXIWANGZHAIQUANA"],["001013","HXXWZQC","华夏希望债券C","债券型","HUAXIAXIWANGZHAIQUANC"],["001014","ZRRAHH","中融融安混合","混合型","ZHONGRONGRONGANHUNHE"],["001015","HXHS300ZSZQA","华夏沪深300指数增强A","股票指数","HUAXIAHUSHEN300ZHISHUZENGQIANGA"],["001016","HXHS300ZSZQC","华夏沪深300指数增强C","股票指数","HUAXIAHUSHEN300ZHISHUZENGQIANGC"],["001017","TDGGDLHHA","泰达改革动力混合A","混合型","TAIDAGAIGEDONGLIHUNHEA"],["001018","YFDXJJHH","易方达新经济混合","混合型","YIFANGDAXINJINGJIHUNHE"],["001019","XYNNLDKZ","兴业年年利定开债","定开债券","XINGYENIANNIANLIDINGKAIZHAI"],["001020","NAYXSYDKZ","诺安裕鑫收益定开债","定开债券","NUOANYUXINSHOUYIDINGKAIZHAI"],["001021","HXYZZGZSA","华夏亚债中国指数A","债券指数","HUAXIAYAZHAIZHONGGUOZHISHUA"],["001023","HXYZZGZSC","华夏亚债中国指数C","债券指数","HUAXIAYAZHAIZHONGGUOZHISHUC"],["001024","RTTZLHPZHH","融通通泽灵活配置混合(后端)","混合型","RONGTONGTONGZELINGHUOPEIZHIHUNHE"],["001026","NALCBHBC","诺安理财宝货币C","货币型","NUOANLICAIBAOHUOBIC"],["001027","QHKYZZDNYZSZQ","前海开源中证大农业指数增强","股票指数","QIANHAIKAIYUANZHONGZHENGDANONGYEZHISHUZENGQIANG"],["001028","HAWLWZTGP","华安物联网主题股票","股票型","HUAANWULIANWANGZHUTIGUPIAO"],["001029","GTRYXDLHH","国投瑞银新动力混合","混合型","GUOTOURUIYINXINDONGLIHUNHE"],["001030","THYDSHYX","天弘云端生活优选","混合型","TIANHONGYUNDUANSHENGHUOYOUXUAN"],["001031","HXAKYXZQA","华夏安康优选债券A","债券型","HUAXIAANKANGYOUXUANZHAIQUANA"],["001033","HXAKYXZQC","华夏安康优选债券C","债券型","HUAXIAANKANGYOUXUANZHAIQUANC"],["001034","HFWCBBHH","华富旺财保本混合","保本型","HUAFUWANGCAIBAOBENHUNHE"],["001035","ZYHLBNDKZ","中银恒利半年定开债","定开债券","ZHONGYINHENGLIBANNIANDINGKAIZHAI"],["001036","JSQYBGGP","嘉实企业变革股票","股票型","JIASHIQIYEBIANGEGUPIAO"],["001037","GTRYRYGGHH","国投瑞银锐意改革混合","混合型","GUOTOURUIYINRUIYIGAIGEHUNHE"],["001038","THZYBHB","天弘增益宝货币","货币型","TIANHONGZENGYIBAOHUOBI"],["001039","JSXJZZGP","嘉实先进制造股票","股票型","JIASHIXIANJINZHIZAOGUPIAO"],["001040","XHCLJXGP","新华策略精选股票","股票型","XINHUACELUEJINGXUANGUPIAO"],["001041","NFLC60TZQE","南方理财60天债券E","理财型","NANFANGLICAI60TIANZHAIQUANE"],["001042","HXLXGP","华夏领先股票","股票型","HUAXIALINGXIANGUPIAO"],["001043","GYMLCZGP","工银美丽城镇股票","股票型","GONGYINMEILICHENGZHENGUPIAO"],["001044","JSXXFGP","嘉实新消费股票","股票型","JIASHIXINXIAOFEIGUPIAO"],["001045","HXKZZZQZQA","华夏可转债增强债券A","债券型","HUAXIAKEZHUANZHAIZENGQIANGZHAIQUANA"],["001046","HXKZZZQZQI","华夏可转债增强债券I","债券型","HUAXIAKEZHUANZHAIZENGQIANGZHAIQUANI"],["001047","GDGQGGGP","光大国企改革股票","股票型","GUANGDAGUOQIGAIGEGUPIAO"],["001048","FGXXCYGP","富国新兴产业股票","股票型","FUGUOXINXINGCHANYEGUPIAO"],["001050","HTFCZDYZLHCLGP","汇添富成长多因子量化策略股票","股票型","HUITIANFUCHENGZHANGDUOYINZILIANGHUACELUEGUPIAO"],["001051","HXSZ50ETFLJ","华夏上证50ETF联接","联接基金","HUAXIASHANGZHENG50ETFLIANJIE"],["001052","HXZZ500ETFLJ","华夏中证500ETF联接","联接基金","HUAXIAZHONGZHENG500ETFLIANJIE"],["001053","NFCXJJ","南方创新经济","混合型","NANFANGCHUANGXINJINGJI"],["001054","GYXJRGP","工银新金融股票","股票型","GONGYINXINJINRONGGUPIAO"],["001055","BSCYZCZZQA","博时产业债纯债债券A","债券型","BOSHICHANYEZHAICHUNZHAIZHAIQUANA"],["001056","BXRFJKSHZTLHPZ","北信瑞丰健康生活主题灵活配置","混合型","BEIXINRUIFENGJIANKANGSHENGHUOZHUTILINGHUOPEIZHI"],["001057","HXLC30TZQA","华夏理财30天债券A","理财型","HUAXIALICAI30TIANZHAIQUANA"],["001058","HXLC30TZQB","华夏理财30天债券B","理财型","HUAXIALICAI30TIANZHAIQUANB"],["001059","ZJJDSY","中金绝对收益","混合型","ZHONGJINJUEDUISHOUYI"],["001060","QHKYGDZBZZHH","前海开源高端装备制造混合","混合型","QIANHAIKAIYUANGAODUANZHUANGBEIZHIZAOHUNHE"],["001061","HXHWSYZQA","华夏海外收益债券A","QDII","HUAXIAHAIWAISHOUYIZHAIQUANA"],["001063","HXHWSYZQC","华夏海外收益债券C","QDII","HUAXIAHAIWAISHOUYIZHAIQUANC"],["001064","GFHBZSA","广发环保指数A","股票指数","GUANGFAHUANBAOZHISHUA"],["001065","HXHWSYZQXH","华夏海外收益债券现汇","QDII","HUAXIAHAIWAISHOUYIZHAIQUANXIANHUI"],["001066","HXHWSYZQXC","华夏海外收益债券现钞","QDII","HUAXIAHAIWAISHOUYIZHAIQUANXIANCHAO"],["001067","PHHSHHA","鹏华弘盛混合A","混合型","PENGHUAHONGSHENGHUNHEA"],["001068","HRXRLHPZHH","华融新锐灵活配置混合","混合型","HUARONGXINRUILINGHUOPEIZHIHUNHE"],["001069","HTBRXFCZHH","华泰柏瑞消费成长混合","混合型","HUATAIBAIRUIXIAOFEICHENGZHANGHUNHE"],["001070","JXXXCYGP","建信信息产业股票","股票型","JIANXINXINXICHANYEGUPIAO"],["001071","HAMTHLWHH","华安媒体互联网混合","混合型","HUAANMEITIHULIANWANGHUNHE"],["001072","HAZNZBZTGP","华安智能装备主题股票","股票型","HUAANZHINENGZHUANGBEIZHUTIGUPIAO"],["001073","HTBRLHJDSYHH","华泰柏瑞量化绝对收益混合","混合型","HUATAIBAIRUILIANGHUAJUEDUISHOUYIHUNHE"],["001074","HTBRLHQDHH","华泰柏瑞量化驱动混合","混合型","HUATAIBAIRUILIANGHUAQUDONGHUNHE"],["001075","BYZXDLHH","宝盈转型动力混合","混合型","BAOYINGZHUANXINGDONGLIHUNHE"],["001076","YFDGGHLHH","易方达改革红利混合","混合型","YIFANGDAGAIGEHONGLIHUNHE"],["001077","HXXJBHBA","华夏现金宝货币A","货币型","HUAXIAXIANJINBAOHUOBIA"],["001078","HXXJBHBB","华夏现金宝货币B","货币型","HUAXIAXIANJINBAOHUOBIB"],["001086","HFHLZQA","华富恒利债券A","债券型","HUAFUHENGLIZHAIQUANA"],["001087","HFHLZQC","华富恒利债券C","债券型","HUAFUHENGLIZHAIQUANC"],["001088","HBGCDXHH","华宝国策导向混合","混合型","HUABAOGUOCEDAOXIANGHUNHE"],["001092","GFSWKJZSQDII","广发生物科技指数(QDII)","QDII-指数","GUANGFASHENGWUKEJIZHISHUQDII"],["001093","GFSWKJZSMY","广发生物科技指数美元","QDII-指数","GUANGFASHENGWUKEJIZHISHUMEIYUAN"],["001094","GTRYTLBHBA","国投瑞银添利宝货币A","货币型","GUOTOURUIYINTIANLIBAOHUOBIA"],["001095","GTRYTLBHBB","国投瑞银添利宝货币B","货币型","GUOTOURUIYINTIANLIBAOHUOBIB"],["001096","GSABJBPHB","国寿安保聚宝盆货币","货币型","GUOSHOUANBAOJUBAOPENHUOBI"],["001097","HTBRJJYXGP","华泰柏瑞积极优选股票","股票型","HUATAIBAIRUIJIJIYOUXUANGUPIAO"],["001101","YHHTYHB","银华惠添益货币","货币型","YINHUAHUITIANYIHUOBI"],["001102","QHKYGJBJYSHH","前海开源国家比较优势混合","混合型","QIANHAIKAIYUANGUOJIABIJIAOYOUSHIHUNHE"],["001103","QHKYGYGM40HH","前海开源工业革命4.0混合","混合型","QIANHAIKAIYUANGONGYEGEMING40HUNHE"],["001104","HAXSLZTGP","华安新丝路主题股票","股票型","HUAANXINSILUZHUTIGUPIAO"],["001105","XDAYZXCXGP","信达澳银转型创新股票","股票型","XINDAAOYINZHUANXINGCHUANGXINGUPIAO"],["001106","HSJKSHHH","华商健康生活混合","混合型","HUASHANGJIANKANGSHENGHUOHUNHE"],["001110","ZOJQLHPZHHA","中欧瑾泉灵活配置混合A","混合型","ZHONGOUJINQUANLINGHUOPEIZHIHUNHEA"],["001111","ZOJQLHPZHHC","中欧瑾泉灵活配置混合C","混合型","ZHONGOUJINQUANLINGHUOPEIZHIHUNHEC"],["001112","DFHZGYSHH","东方红中国优势混合","混合型","DONGFANGHONGZHONGGUOYOUSHIHUNHE"],["001113","NFDSJ100A","南方大数据100A","股票指数","NANFANGDASHUJU100A"],["001115","GFJAHHA","广发聚安混合A","混合型","GUANGFAJUANHUNHEA"],["001116","GFJAHHC","广发聚安混合C","混合型","GUANGFAJUANHUNHEC"],["001117","ZOJXDQKFHHA","中欧精选定期开放混合A","混合型","ZHONGOUJINGXUANDINGQIKAIFANGHUNHEA"],["001118","HBSJQDHH","华宝事件驱动混合","混合型","HUABAOSHIJIANQUDONGHUNHE"],["001119","GTRYXHBHH","国投瑞银新回报混合","混合型","GUOTOURUIYINXINHUIBAOHUNHE"],["001120","DFRXRDWJHHA","东方睿鑫热点挖掘混合A","混合型","DONGFANGRUIXINREDIANWAJUEHUNHEA"],["001121","DFRXRDWJHHC","东方睿鑫热点挖掘混合C","混合型","DONGFANGRUIXINREDIANWAJUEHUNHEC"],["001122","PHHLHHA","鹏华弘利混合A","混合型","PENGHUAHONGLIHUNHEA"],["001123","PHHLHHC","鹏华弘利混合C","混合型","PENGHUAHONGLIHUNHEC"],["001124","RTTTBBHHC","融通通泰保本混合C","保本型","RONGTONGTONGTAIBAOBENHUNHEC"],["001125","BSHLWZTLHPZHH","博时互联网主题灵活配置混合","混合型","BOSHIHULIANWANGZHUTILINGHUOPEIZHIHUNHE"],["001126","STMGZYZZGP","上投摩根卓越制造股票","股票型","SHANGTOUMOGENZHUOYUEZHIZAOGUPIAO"],["001127","ZYHGCLHH","中银宏观策略混合","混合型","ZHONGYINHONGGUANCELUEHUNHE"],["001128","BYXXCYHH","宝盈新兴产业混合","混合型","BAOYINGXINXINGCHANYEHUNHE"],["001133","GFZZQZKXXFLJA","广发中证全指可选消费联接A","联接基金","GUANGFAZHONGZHENGQUANZHIKEXUANXIAOFEILIANJIEA"],["001134","GFTTLHBE","广发天天利货币E","货币型","GUANGFATIANTIANLIHUOBIE"],["001135","YMPZSJHH","益民品质升级混合","混合型","YIMINPINZHISHENGJIHUNHE"],["001136","YFDYRHH","易方达裕如混合","混合型","YIFANGDAYURUHUNHE"],["001137","GTRYSFLYNZQA","国投瑞银岁丰利一年债券A","定开债券","GUOTOURUIYINSUIFENGLIYINIANZHAIQUANA"],["001138","GTRYSFLYNZQC","国投瑞银岁丰利一年债券C","定开债券","GUOTOURUIYINSUIFENGLIYINIANZHAIQUANC"],["001139","HAXDLLHPZHH","华安新动力灵活配置混合","混合型","HUAANXINDONGLILINGHUOPEIZHIHUNHE"],["001140","GYZHBLHPZHH","工银总回报灵活配置混合","混合型","GONGYINZONGHUIBAOLINGHUOPEIZHIHUNHE"],["001141","TDHLCYHHA","泰达宏利创盈混合A","混合型","TAIDAHONGLICHUANGYINGHUNHEA"],["001142","TDHLCYHHB","泰达宏利创盈混合B","混合型","TAIDAHONGLICHUANGYINGHUNHEB"],["001143","HSLHJQHH","华商量化进取混合","混合型","HUASHANGLIANGHUAJINQUHUNHE"],["001144","DCHLWSWHH","大成互联网思维混合","混合型","DACHENGHULIANWANGSIWEIHUNHE"],["001146","ZOJYLHPZHHA","中欧瑾源灵活配置混合A","混合型","ZHONGOUJINYUANLINGHUOPEIZHIHUNHEA"],["001147","ZOJYLHPZHHC","中欧瑾源灵活配置混合C","混合型","ZHONGOUJINYUANLINGHUOPEIZHIHUNHEC"],["001148","SWLXDCLLHPZHHA","申万菱信多策略灵活配置混合A","混合型","SHENWANLINGXINDUOCELUELINGHUOPEIZHIHUNHEA"],["001149","HFJXHSLTZSC","汇丰晋信恒生龙头指数C","股票指数","HUIFENGJINXINHENGSHENGLONGTOUZHISHUC"],["001150","RTHLWCMLHPZHH","融通互联网传媒灵活配置混合","混合型","RONGTONGHULIANWANGCHUANMEILINGHUOPEIZHIHUNHE"],["001151","RTHLWCMLHPZHH","融通互联网传媒灵活配置混合(后端)","混合型","RONGTONGHULIANWANGCHUANMEILINGHUOPEIZHIHUNHE"],["001152","RTXQYXJJLHPZHH","融通新区域新经济灵活配置混合","混合型","RONGTONGXINQUYUXINJINGJILINGHUOPEIZHIHUNHE"],["001153","RTXQYXJJLHPZHH","融通新区域新经济灵活配置混合(后端)","混合型","RONGTONGXINQUYUXINJINGJILINGHUOPEIZHIHUNHE"],["001154","BXRFPAZGZTLHPZ","北信瑞丰平安中国主题灵活配置","混合型","BEIXINRUIFENGPINGANZHONGGUOZHUTILINGHUOPEIZHI"],["001155","ZHAXB1HBBHH","中海安鑫宝1号保本混合","保本型","ZHONGHAIANXINBAO1HAOBAOBENHUNHE"],["001156","SWLXXNYQCHH","申万菱信新能源汽车混合","混合型","SHENWANLINGXINXINNENGYUANQICHEHUNHE"],["001157","GLARQLHPZHH","国联安睿祺灵活配置混合","混合型","GUOLIANANRUIQILINGHUOPEIZHIHUNHE"],["001158","GYXCLXNYGP","工银新材料新能源股票","股票型","GONGYINXINCAILIAOXINNENGYUANGUPIAO"],["001159","DCJXLHPZHHA","大成景秀灵活配置混合A","混合型","DACHENGJINGXIULINGHUOPEIZHIHUNHEA"],["001160","DFYR18GYDKZA","东方永润18个月定开债A","定开债券","DONGFANGYONGRUN18GEYUEDINGKAIZHAIA"],["001161","DFYR18GYDKZC","东方永润18个月定开债C","定开债券","DONGFANGYONGRUN18GEYUEDINGKAIZHAIC"],["001162","QHKYYSLCGPA","前海开源优势蓝筹股票A","股票型","QIANHAIKAIYUANYOUSHILANCHOUGUPIAOA"],["001163","YHZGM30GP","银华中国梦30股票","股票型","YINHUAZHONGGUOMENG30GUPIAO"],["001164","ZOQHLHPZHHA","中欧琪和灵活配置混合A","混合型","ZHONGOUQIHELINGHUOPEIZHIHUNHEA"],["001165","ZOQHLHPZHHC","中欧琪和灵活配置混合C","混合型","ZHONGOUQIHELINGHUOPEIZHIHUNHEC"],["001166","JXHBCYGP","建信环保产业股票","股票型","JIANXINHUANBAOCHANYEGUPIAO"],["001167","JYKJCXGP","金鹰科技创新股票","股票型","JINYINGKEJICHUANGXINGUPIAO"],["001168","GTRYYXSYHH","国投瑞银优选收益混合","混合型","GUOTOURUIYINYOUXUANSHOUYIHUNHE"],["001169","GTRYXJZHH","国投瑞银新价值混合","混合型","GUOTOURUIYINXINJIAZHIHUNHE"],["001170","TDHLFXHH","泰达宏利复兴混合","混合型","TAIDAHONGLIFUXINGHUNHE"],["001171","GYYLCYGP","工银养老产业股票","股票型","GONGYINYANGLAOCHANYEGUPIAO"],["001172","PHHZHHA","鹏华弘泽混合A","混合型","PENGHUAHONGZEHUNHEA"],["001173","ZOJHLHPZHHA","中欧瑾和灵活配置混合A","混合型","ZHONGOUJINHELINGHUOPEIZHIHUNHEA"],["001174","ZOJHLHPZHHC","中欧瑾和灵活配置混合C","混合型","ZHONGOUJINHELINGHUOPEIZHIHUNHEC"],["001175","SZRRTLHBA","山证日日添利货币A","货币型","SHANZHENGRIRITIANLIHUOBIA"],["001176","SZRRTLHBB","山证日日添利货币B","货币型","SHANZHENGRIRITIANLIHUOBIB"],["001177","SZRRTLHBC","山证日日添利货币C","货币型","SHANZHENGRIRITIANLIHUOBIC"],["001178","QHKYZRZGP","前海开源再融资股票","股票型","QIANHAIKAIYUANZAIRONGZIGUPIAO"],["001179","DBDJKLHPZHH","德邦大健康灵活配置混合","混合型","DEBANGDAJIANKANGLINGHUOPEIZHIHUNHE"],["001180","GFYYWSLJA","广发医药卫生联接A","联接基金","GUANGFAYIYAOWEISHENGLIANJIEA"],["001181","NFGGJY","南方改革机遇","混合型","NANFANGGAIGEJIYU"],["001182","YFDAXHKHH","易方达安心回馈混合","混合型","YIFANGDAANXINHUIKUIHUNHE"],["001183","NFLTA","南方利淘A","混合型","NANFANGLITAOA"],["001184","YFDXCTLHPZHH","易方达新常态灵活配置混合","混合型","YIFANGDAXINCHANGTAILINGHUOPEIZHIHUNHE"],["001185","AXDTCLHHA","安信动态策略混合A","混合型","ANXINDONGTAICELUEHUNHEA"],["001186","FGWTJKGP","富国文体健康股票","股票型","FUGUOWENTIJIANKANGGUPIAO"],["001188","PHGGHLGP","鹏华改革红利股票","股票型","PENGHUAGAIGEHONGLIGUPIAO"],["001189","GFJBHH","广发聚宝混合","混合型","GUANGFAJUBAOHUNHE"],["001190","PHHRHHA","鹏华弘润混合A","混合型","PENGHUAHONGRUNHUNHEA"],["001191","PHHRHHC","鹏华弘润混合C","混合型","PENGHUAHONGRUNHUNHEC"],["001192","STMGZHQDHH","上投摩根整合驱动混合","混合型","SHANGTOUMOGENZHENGHEQUDONGHUNHE"],["001193","ZJXFSJ","中金消费升级","股票型","ZHONGJINXIAOFEISHENGJI"],["001194","JSCCWJHBHHA","景顺长城稳健回报混合A","混合型","JINGSHUNCHANGCHENGWENJIANHUIBAOHUNHEA"],["001195","GYNYCYGP","工银农业产业股票","股票型","GONGYINNONGYECHANYEGUPIAO"],["001196","DFDXLHPZHHA","东方鼎新灵活配置混合A","混合型","DONGFANGDINGXINLINGHUOPEIZHIHUNHEA"],["001197","CSZXSJZTLHPZHH","长盛转型升级主题灵活配置混合","混合型","CHANGSHENGZHUANXINGSHENGJIZHUTILINGHUOPEIZHIHUNHE"],["001198","DFHXLHPZHHA","东方惠新灵活配置混合A","混合型","DONGFANGHUIXINLINGHUOPEIZHIHUNHEA"],["001199","CJHXJLZQA","创金合信聚利债券A","债券型","CHUANGJINHEXINJULIZHAIQUANA"],["001200","CJHXJLZQC","创金合信聚利债券C","债券型","CHUANGJINHEXINJULIZHAIQUANC"],["001201","SWLXAXHBHHA","申万菱信安鑫回报混合A","混合型","SHENWANLINGXINANXINHUIBAOHUNHEA"],["001202","DFHLXJXHH","东方红领先精选混合","混合型","DONGFANGHONGLINGXIANJINGXUANHUNHE"],["001203","DFHWJJXHHA","东方红稳健精选混合A","混合型","DONGFANGHONGWENJIANJINGXUANHUNHEA"],["001204","DFHWJJXHHC","东方红稳健精选混合C","混合型","DONGFANGHONGWENJIANJINGXUANHUNHEC"],["001205","JXWJHBLHPZHH","建信稳健回报灵活配置混合","混合型","JIANXINWENJIANHUIBAOLINGHUOPEIZHIHUNHE"],["001206","GFJHHHA","广发聚惠混合A","混合型","GUANGFAJUHUIHUNHEA"],["001207","GFJHHHC","广发聚惠混合C","混合型","GUANGFAJUHUIHUNHEC"],["001208","NADTJJGP","诺安低碳经济股票","股票型","NUOANDITANJINGJIGUPIAO"],["001209","QHKYYDYLHHA","前海开源一带一路混合A","混合型","QIANHAIKAIYUANYIDAIYILUHUNHEA"],["001210","THHLWHH","天弘互联网混合","混合型","TIANHONGHULIANWANGHUNHE"],["001211","ZOGQBHB","中欧滚钱宝货币","货币型","ZHONGOUGUNQIANBAOHUOBI"],["001212","HRYDWJZQA","华润元大稳健债券A","债券型","HUARUNYUANDAWENJIANZHAIQUANA"],["001213","HRYDWJZQC","华润元大稳健债券C","债券型","HUARUNYUANDAWENJIANZHAIQUANC"],["001214","HTBRZZ500ETFLJ","华泰柏瑞中证500ETF联接","联接基金","HUATAIBAIRUIZHONGZHENG500ETFLIANJIE"],["001215","BSHGSYZQYJJA","博时沪港深优质企业基金A","混合型","BOSHIHUGANGSHENYOUZHIQIYEJIJINA"],["001216","YFDXSYHHA","易方达新收益混合A","混合型","YIFANGDAXINSHOUYIHUNHEA"],["001217","YFDXSYHHC","易方达新收益混合C","混合型","YIFANGDAXINSHOUYIHUNHEC"],["001218","GTRYJXSYHH","国投瑞银精选收益混合","混合型","GUOTOURUIYINJINGXUANSHOUYIHUNHE"],["001219","STMGDTDYZHH","上投摩根动态多因子混合","混合型","SHANGTOUMOGENDONGTAIDUOYINZIHUNHE"],["001220","MSJYYJJXHH","民生加银研究精选混合","混合型","MINSHENGJIAYINYANJIUJINGXUANHUNHE"],["001221","GLAXFHHA","国联安鑫富混合A","混合型","GUOLIANANXINFUHUNHEA"],["001222","PHWYCZHH","鹏华外延成长混合","混合型","PENGHUAWAIYANCHENGZHANGHUNHE"],["001223","PHWHCMYLGP","鹏华文化传媒娱乐股票","股票型","PENGHUAWENHUACHUANMEIYULEGUPIAO"],["001224","ZYXSLLHPZHH","中邮新思路灵活配置混合","混合型","ZHONGYOUXINSILULINGHUOPEIZHIHUNHE"],["001225","ZYQSJXLHPZHH","中邮趋势精选灵活配置混合","混合型","ZHONGYOUQUSHIJINGXUANLINGHUOPEIZHIHUNHE"],["001226","ZYWJTLLHPZHH","中邮稳健添利灵活配置混合","混合型","ZHONGYOUWENJIANTIANLILINGHUOPEIZHIHUNHE"],["001227","ZYXXCYLHPZHH","中邮信息产业灵活配置混合","混合型","ZHONGYOUXINXICHANYELINGHUOPEIZHIHUNHE"],["001228","GLAXXLHPZHHA","国联安鑫享灵活配置混合A","混合型","GUOLIANANXINXIANGLINGHUOPEIZHIHUNHEA"],["001229","DBFXLHPZHHA","德邦福鑫灵活配置混合A","混合型","DEBANGFUXINLINGHUOPEIZHIHUNHEA"],["001230","PHYYKJ","鹏华医药科技","股票型","PENGHUAYIYAOKEJI"],["001231","YHTLLHPZHHA","银华泰利灵活配置混合A","混合型","YINHUATAILILINGHUOPEIZHIHUNHEA"],["001232","JHHBA","嘉合货币A","货币型","JIAHEHUOBIA"],["001233","JHHBB","嘉合货币B","货币型","JIAHEHUOBIB"],["001234","GJZYHB","国金众赢货币","货币型","GUOJINZHONGYINGHUOBI"],["001235","ZYGYQYZ","中银国有企业债","债券型","ZHONGYINGUOYOUQIYEZHAI"],["001236","BSSLZTGPA","博时丝路主题股票A","股票型","BOSHISILUZHUTIGUPIAOA"],["001237","BSSZ50ETFLJ","博时上证50ETF联接","联接基金","BOSHISHANGZHENG50ETFLIANJIE"],["001238","BSZCYHBB","博时招财一号保本","保本型","BOSHIZHAOCAIYIHAOBAOBEN"],["001239","CSGQGGHH","长盛国企改革混合","混合型","CHANGSHENGGUOQIGAIGEHUNHE"],["001240","MSJYXJZLHBD","民生加银现金增利货币D","货币型","MINSHENGJIAYINXIANJINZENGLIHUOBID"],["001241","GSABZZ500ETFLJ","国寿安保中证500ETF联接","联接基金","GUOSHOUANBAOZHONGZHENG500ETFLIANJIE"],["001242","BSZZTJDSJ100A","博时中证淘金大数据100A","股票指数","BOSHIZHONGZHENGTAOJINDASHUJU100A"],["001243","BSZZTJDSJ100I","博时中证淘金大数据100I","股票指数","BOSHIZHONGZHENGTAOJINDASHUJU100I"],["001244","HTBRLHZHHH","华泰柏瑞量化智慧混合","混合型","HUATAIBAIRUILIANGHUAZHIHUIHUNHE"],["001245","GYSTHJGP","工银生态环境股票","股票型","GONGYINSHENGTAIHUANJINGGUPIAO"],["001246","HFCLDKZ","华福长乐定开债","定开债券","HUAFUCHANGLEDINGKAIZHAI"],["001247","HTBRXLHHA","华泰柏瑞新利混合A","混合型","HUATAIBAIRUIXINLIHUNHEA"],["001249","YFDXLLHPZHH","易方达新利灵活配置混合","混合型","YIFANGDAXINLILINGHUOPEIZHIHUNHE"],["001250","THXHLHH","天弘新活力混合","混合型","TIANHONGXINHUOLIHUNHE"],["001251","THXJGJHBD","天弘现金管家货币D","货币型","TIANHONGXIANJINGUANJIAHUOBID"],["001252","ZHJQSYHH","中海进取收益混合","混合型","ZHONGHAIJINQUSHOUYIHUNHE"],["001253","JXHBLHPZHH","建信回报灵活配置混合","混合型","JIANXINHUIBAOLINGHUOPEIZHIHUNHE"],["001254","TDHLXQDHHA","泰达宏利新起点混合A","混合型","TAIDAHONGLIXINQIDIANHUNHEA"],["001255","CCGGHLHH","长城改革红利混合","混合型","CHANGCHENGGAIGEHONGLIHUNHE"],["001256","HDYXCZHH","泓德优选成长混合","混合型","HONGDEYOUXUANCHENGZHANGHUNHE"],["001257","XYSYZQZQA","兴业收益增强债券A","债券型","XINGYESHOUYIZENGQIANGZHAIQUANA"],["001258","XYSYZQZQC","兴业收益增强债券C","债券型","XINGYESHOUYIZENGQIANGZHAIQUANC"],["001259","DBXXWJLHPZHH","德邦鑫星稳健灵活配置混合","混合型","DEBANGXINXINGWENJIANLINGHUOPEIZHIHUNHE"],["001260","GFAXHH","广发安心混合","混合型","GUANGFAANXINHUNHE"],["001261","ZRXJYHH","中融新机遇混合","混合型","ZHONGRONGXINJIYUHUNHE"],["001262","DCJMLHPZHHA","大成景明灵活配置混合A","混合型","DACHENGJINGMINGLINGHUOPEIZHIHUNHEA"],["001263","DCJSLHPZHHA","大成景穗灵活配置混合A","混合型","DACHENGJINGSUILINGHUOPEIZHIHUNHEA"],["001264","YHHLLHPZHHA","银华恒利灵活配置混合A","混合型","YINHUAHENGLILINGHUOPEIZHIHUNHEA"],["001265","GTXYLHPZHHA","国泰兴益灵活配置混合A","混合型","GUOTAIXINGYILINGHUOPEIZHIHUNHEA"],["001266","GTRYZCBBHH","国投瑞银招财保本混合","保本型","GUOTOURUIYINZHAOCAIBAOBENHUNHE"],["001267","TDHLLCHH","泰达宏利蓝筹混合","混合型","TAIDAHONGLILANCHOUHUNHE"],["001268","FGGJAQZTHH","富国国家安全主题混合","混合型","FUGUOGUOJIAANQUANZHUTIHUNHE"],["001270","YDLHPZHHXFQSA","英大灵活配置混合型发起式A","混合型","YINGDALINGHUOPEIZHIHUNHEXINGFAQISHIA"],["001271","YDLHPZHHXFQSB","英大灵活配置混合型发起式B","混合型","YINGDALINGHUOPEIZHIHUNHEXINGFAQISHIB"],["001272","XYJLLHPZHH","兴业聚利灵活配置混合","混合型","XINGYEJULILINGHUOPEIZHIHUNHE"],["001273","MSJYXDLHHA","民生加银新动力混合A","混合型","MINSHENGJIAYINXINDONGLIHUNHEA"],["001274","MSJYXDLHHD","民生加银新动力混合D","混合型","MINSHENGJIAYINXINDONGLIHUNHED"],["001275","ZYCXYSLHPZHH","中邮创新优势灵活配置混合","混合型","ZHONGYOUCHUANGXINYOUSHILINGHUOPEIZHIHUNHE"],["001276","JXXJJLHPZHH","建信新经济灵活配置混合","混合型","JIANXINXINJINGJILINGHUOPEIZHIHUNHE"],["001277","BSGQGGGP","博时国企改革股票","股票型","BOSHIGUOQIGAIGEGUPIAO"],["001278","QHKYQJNYHHA","前海开源清洁能源混合A","混合型","QIANHAIKAIYUANQINGJIENENGYUANHUNHEA"],["001279","ZHJJZLHH","中海积极增利混合","混合型","ZHONGHAIJIJIZENGLIHUNHE"],["001280","YHJLLHPZHHA","银华聚利灵活配置混合A","混合型","YINHUAJULILINGHUOPEIZHIHUNHEA"],["001281","CAXLYXHHA","长安鑫利优选混合A","混合型","CHANGANXINLIYOUXUANHUNHEA"],["001282","HAXJYBBHH","华安新机遇保本混合","保本型","HUAANXINJIYUBAOBENHUNHE"],["001283","HTHTSJXDLHHA","红塔红土盛金新动力混合A","混合型","HONGTAHONGTUSHENGJINXINDONGLIHUNHEA"],["001284","HTHTSJXDLHHC","红塔红土盛金新动力混合C","混合型","HONGTAHONGTUSHENGJINXINDONGLIHUNHEC"],["001285","YFDXXHHI","易方达新鑫混合I","混合型","YIFANGDAXINXINHUNHEI"],["001286","YFDXXHHE","易方达新鑫混合E","混合型","YIFANGDAXINXINHUNHEE"],["001287","AXYSZZHHA","安信优势增长混合A","混合型","ANXINYOUSHIZENGZHANGHUNHEA"],["001289","YHHLLHPZHHA","银华汇利灵活配置混合A","混合型","YINHUAHUILILINGHUOPEIZHIHUNHEA"],["001290","GFATHH","广发安泰混合","混合型","GUANGFAANTAIHUNHE"],["001291","DMLHDCLGP","大摩量化多策略股票","股票型","DAMOLIANGHUADUOCELUEGUPIAO"],["001294","XHZLXXCYLHPZHH","新华战略新兴产业灵活配置混合","混合型","XINHUAZHANLUEXINXINGCHANYELINGHUOPEIZHIHUNHE"],["001295","DCJYLHPZHHA","大成景源灵活配置混合A","混合型","DACHENGJINGYUANLINGHUOPEIZHIHUNHEA"],["001296","CCZXCZLHPZHH","长城转型成长灵活配置混合","混合型","CHANGCHENGZHUANXINGCHENGZHANGLINGHUOPEIZHIHUNHE"],["001297","PADHZHZGHH","平安大华智慧中国混合","混合型","PINGANDAHUAZHIHUIZHONGGUOHUNHE"],["001298","JYMZXXHH","金鹰民族新兴混合","混合型","JINYINGMINZUXINXINGHUNHE"],["001299","XYTLZQ","兴业添利债券","债券型","XINGYETIANLIZHAIQUAN"],["001300","DCRJLHPZHHA","大成睿景灵活配置混合A","混合型","DACHENGRUIJINGLINGHUOPEIZHIHUNHEA"],["001301","DCRJLHPZHHC","大成睿景灵活配置混合C","混合型","DACHENGRUIJINGLINGHUOPEIZHIHUNHEC"],["001302","QHKYJYZBHHA","前海开源金银珠宝混合A","混合型","QIANHAIKAIYUANJINYINZHUBAOHUNHEA"],["001303","YHWLLHPZHHA","银华稳利灵活配置混合A","混合型","YINHUAWENLILINGHUOPEIZHIHUNHEA"],["001304","JXXAHBLHPZHH","建信鑫安回报灵活配置混合","混合型","JIANXINXINANHUIBAOLINGHUOPEIZHIHUNHE"],["001305","JTTFGGHH","九泰天富改革混合","混合型","JIUTAITIANFUGAIGEHUNHE"],["001306","ZOYYHHA","中欧永裕混合A","混合型","ZHONGOUYONGYUHUNHEA"],["001307","ZOYYHHC","中欧永裕混合C","混合型","ZHONGOUYONGYUHUNHEC"],["001308","BSWFHB","博时外服货币","货币型","BOSHIWAIFUHUOBI"],["001309","DFHRYDQKFHH","东方红睿逸定期开放混合","混合型","DONGFANGHONGRUIYIDINGQIKAIFANGHUNHE"],["001310","HTBRHYJZYSHH","华泰柏瑞行业竞争优势混合","混合型","HUATAIBAIRUIHANGYEJINGZHENGYOUSHIHUNHE"],["001311","HAXHBLHPZHH","华安新回报灵活配置混合","混合型","HUAANXINHUIBAOLINGHUOPEIZHIHUNHE"],["001312","HAXYXLHPZHHA","华安新优选灵活配置混合A","混合型","HUAANXINYOUXUANLINGHUOPEIZHIHUNHEA"],["001313","STMGZHHLGP","上投摩根智慧互联股票","股票型","SHANGTOUMOGENZHIHUIHULIANGUPIAO"],["001314","YFDXYHHI","易方达新益混合I","混合型","YIFANGDAXINYIHUNHEI"],["001315","YFDXYHHE","易方达新益混合E","混合型","YIFANGDAXINYIHUNHEE"],["001316","AXWJZZHHA","安信稳健增值混合A","混合型","ANXINWENJIANZENGZHIHUNHEA"],["001318","DFXCLLHPZHHA","东方新策略灵活配置混合A","混合型","DONGFANGXINCELUELINGHUOPEIZHIHUNHEA"],["001319","NYXXCMGP","农银信息传媒股票","股票型","NONGYINXINXICHUANMEIGUPIAO"],["001320","GYFYHBLHPZHH","工银丰盈回报灵活配置混合","混合型","GONGYINFENGYINGHUIBAOLINGHUOPEIZHIHUNHE"],["001321","XYJYLHPZHH","兴业聚优灵活配置混合","混合型","XINGYEJUYOULINGHUOPEIZHIHUNHE"],["001322","DWXQS","东吴新趋势","混合型","DONGWUXINQUSHI"],["001323","DWYDHLA","东吴移动互联A","混合型","DONGWUYIDONGHULIANA"],["001324","HBXJZHH","华宝新价值混合","混合型","HUABAOXINJIAZHIHUNHE"],["001325","PHHHHHA","鹏华弘和混合A","混合型","PENGHUAHONGHEHUNHEA"],["001326","PHHHHHC","鹏华弘和混合C","混合型","PENGHUAHONGHEHUNHEC"],["001327","PHHHHHA","鹏华弘华混合A","混合型","PENGHUAHONGHUAHUNHEA"],["001328","PHHHHHC","鹏华弘华混合C","混合型","PENGHUAHONGHUAHUNHEC"],["001329","PHHSHHA","鹏华弘实混合A","混合型","PENGHUAHONGSHIHUNHEA"],["001330","PHHSHHC","鹏华弘实混合C","混合型","PENGHUAHONGSHIHUNHEC"],["001331","PHHXHHA","鹏华弘信混合A","混合型","PENGHUAHONGXINHUNHEA"],["001332","PHHXHHC","鹏华弘信混合C","混合型","PENGHUAHONGXINHUNHEC"],["001333","DCJPLHPZHHA","大成景鹏灵活配置混合A","混合型","DACHENGJINGPENGLINGHUOPEIZHIHUNHEA"],["001334","NFLXA","南方利鑫A","混合型","NANFANGLIXINA"],["001335","NFLZA","南方利众A","混合型","NANFANGLIZHONGA"],["001336","PHHYHHA","鹏华弘益混合A","混合型","PENGHUAHONGYIHUNHEA"],["001337","PHHYHHC","鹏华弘益混合C","混合型","PENGHUAHONGYIHUNHEC"],["001338","AXWJZZHHC","安信稳健增值混合C","混合型","ANXINWENJIANZENGZHIHUNHEC"],["001339","HFDXLHPZHH","华福鼎新灵活配置混合","混合型","HUAFUDINGXINLINGHUOPEIZHIHUNHE"],["001340","HTBRHLLHHHA","华泰柏瑞惠利灵活混合A","混合型","HUATAIBAIRUIHUILILINGHUOHUNHEA"],["001341","HTBRHLLHHHC","华泰柏瑞惠利灵活混合C","混合型","HUATAIBAIRUIHUILILINGHUOHUNHEC"],["001342","YFDXXHHA","易方达新享混合A","混合型","YIFANGDAXINXIANGHUNHEA"],["001343","YFDXXHHC","易方达新享混合C","混合型","YIFANGDAXINXIANGHUNHEC"],["001345","FGXSYLHPZHHA","富国新收益灵活配置混合A","混合型","FUGUOXINSHOUYILINGHUOPEIZHIHUNHEA"],["001347","FGXSYLHPZHHC","富国新收益灵活配置混合C","混合型","FUGUOXINSHOUYILINGHUOPEIZHIHUNHEC"],["001348","DMXJYHH","大摩新机遇混合","混合型","DAMOXINJIYUHUNHE"],["001349","FGGGDLHH","富国改革动力混合","混合型","FUGUOGAIGEDONGLIHUNHE"],["001351","NAZZ500ETFLJ","诺安中证500ETF联接","联接基金","NUOANZHONGZHENG500ETFLIANJIE"],["001352","MSJYXZLHH","民生加银新战略混合","混合型","MINSHENGJIAYINXINZHANLUEHUNHE"],["001355","GFJTHHA","广发聚泰混合A","混合型","GUANGFAJUTAIHUNHEA"],["001356","GFJTHHC","广发聚泰混合C","混合型","GUANGFAJUTAIHUNHEC"],["001357","HDHFHHA","泓德泓富混合A","混合型","HONGDEHONGFUHUNHEA"],["001358","BYXTYLHH","宝盈祥泰养老混合","混合型","BAOYINGXIANGTAIYANGLAOHUNHE"],["001359","GLATXLHPZHHA","国联安添鑫灵活配置混合A","混合型","GUOLIANANTIANXINLINGHUOPEIZHIHUNHEA"],["001361","JSZZTMT150ETFLJ","景顺中证TMT150ETF联接","联接基金","JINGSHUNZHONGZHENGTMT150ETFLIANJIE"],["001362","JSCCLXHBHHA","景顺长城领先回报混合A","混合型","JINGSHUNCHANGCHENGLINGXIANHUIBAOHUNHEA"],["001363","CCJHBB","长城久惠保本","保本型","CHANGCHENGJIUHUIBAOBEN"],["001364","DCJRLHPZHH","大成景润灵活配置混合","混合型","DACHENGJINGRUNLINGHUOPEIZHIHUNHE"],["001365","DCZXHBLHPZHH","大成正向回报灵活配置混合","混合型","DACHENGZHENGXIANGHUIBAOLINGHUOPEIZHIHUNHE"],["001366","JYCYZHHH","金鹰产业整合混合","混合型","JINYINGCHANYEZHENGHEHUNHE"],["001367","DBXTLZQA","德邦新添利债券A","债券型","DEBANGXINTIANLIZHAIQUANA"],["001368","XYWGSYYNLCZQ","兴业稳固收益一年理财债券","定开债券","XINGYEWENGUSHOUYIYINIANLICAIZHAIQUAN"],["001369","XYWGSYLNLCZQ","兴业稳固收益两年理财债券","定开债券","XINGYEWENGUSHOUYILIANGNIANLICAIZHAIQUAN"],["001370","ZYXQSHH","中银新趋势混合","混合型","ZHONGYINXINQUSHIHUNHE"],["001371","FGHGSJZHH","富国沪港深价值混合","混合型","FUGUOHUGANGSHENJIAZHIHUNHE"],["001373","YFDXSLLHPZHH","易方达新丝路灵活配置混合","混合型","YIFANGDAXINSILULINGHUOPEIZHIHUNHE"],["001374","HXXJZLHBB","华夏现金增利货币B","货币型","HUAXIAXIANJINZENGLIHUOBIB"],["001375","JYSABBHHC","金元顺安保本混合C","保本型","JINYUANSHUNANBAOBENHUNHEC"],["001376","HDHFHHC","泓德泓富混合C","混合型","HONGDEHONGFUHUNHEC"],["001379","JSCCLXHBHHC","景顺长城领先回报混合C","混合型","JINGSHUNCHANGCHENGLINGXIANHUIBAOHUNHEC"],["001380","PHHSHHC","鹏华弘盛混合C","混合型","PENGHUAHONGSHENGHUNHEC"],["001381","PHHZHHC","鹏华弘泽混合C","混合型","PENGHUAHONGZEHUNHEC"],["001384","DFXSLHHA","东方新思路混合A","混合型","DONGFANGXINSILUHUNHEA"],["001385","DFXSLHHC","东方新思路混合C","混合型","DONGFANGXINSILUHUNHEC"],["001386","THHYBHBA","天弘弘运宝货币A","货币型","TIANHONGHONGYUNBAOHUOBIA"],["001387","ZRXJJHHA","中融新经济混合A","混合型","ZHONGRONGXINJINGJIHUNHEA"],["001388","ZRXJJHHC","中融新经济混合C","混合型","ZHONGRONGXINJINGJIHUNHEC"],["001389","ZRXYSHHA","中融新优势混合A","混合型","ZHONGRONGXINYOUSHIHUNHEA"],["001390","ZRXYSHHC","中融新优势混合C","混合型","ZHONGRONGXINYOUSHIHUNHEC"],["001391","THHYBHBB","天弘弘运宝货币B","货币型","TIANHONGHONGYUNBAOHUOBIB"],["001392","GFJRDCHHA","国富金融地产混合A","混合型","GUOFUJINRONGDICHANHUNHEA"],["001393","GFJRDCHHC","国富金融地产混合C","混合型","GUOFUJINRONGDICHANHUNHEC"],["001394","BSXQSHHA","博时新趋势混合A","混合型","BOSHIXINQUSHIHUNHEA"],["001395","BSXQSHHC","博时新趋势混合C","混合型","BOSHIXINQUSHIHUNHEC"],["001396","JXHLWCYSJGP","建信互联网+产业升级股票","股票型","JIANXINHULIANWANGCHANYESHENGJIGUPIAO"],["001397","JXJGZZZSZQ","建信精工制造指数增强","股票指数","JIANXINJINGGONGZHIZAOZHISHUZENGQIANG"],["001398","HTBRJKSHHH","华泰柏瑞健康生活混合","混合型","HUATAIBAIRUIJIANKANGSHENGHUOHUNHE"],["001399","AXXADLHHA","安信鑫安得利混合A","混合型","ANXINXINANDELIHUNHEA"],["001400","AXXADLHHC","安信鑫安得利混合C","混合型","ANXINXINANDELIHUNHEC"],["001401","DBRYHB","德邦如意货币","货币型","DEBANGRUYIHUOBI"],["001402","XCXXHHA","信诚新选混合A","混合型","XINCHENGXINXUANHUNHEA"],["001403","ZSGQGGZTHHJJ","招商国企改革主题混合基金","混合型","ZHAOSHANGGUOQIGAIGEZHUTIHUNHEJIJIN"],["001404","ZSYDHLWCYGPJJ","招商移动互联网产业股票基金","股票型","ZHAOSHANGYIDONGHULIANWANGCHANYEGUPIAOJIJIN"],["001405","DFHCLJXHHA","东方红策略精选混合A","混合型","DONGFANGHONGCELUEJINGXUANHUNHEA"],["001406","DFHCLJXHHC","东方红策略精选混合C","混合型","DONGFANGHONGCELUEJINGXUANHUNHEC"],["001407","JSCCWJHBHHC","景顺长城稳健回报混合C","混合型","JINGSHUNCHANGCHENGWENJIANHUIBAOHUNHEC"],["001408","JXXFHBLHPZHHA","建信鑫丰回报灵活配置混合A","混合型","JIANXINXINFENGHUIBAOLINGHUOPEIZHIHUNHEA"],["001409","GYHLWJGP","工银互联网加股票","股票型","GONGYINHULIANWANGJIAGUPIAO"],["001410","XDAYXNYCYGP","信达澳银新能源产业股票","股票型","XINDAAOYINXINNENGYUANCHANYEGUPIAO"],["001411","NACXQDHHA","诺安创新驱动混合A","混合型","NUOANCHUANGXINQUDONGHUNHEA"],["001412","DBXXJZLHPZHHA","德邦鑫星价值灵活配置混合A","混合型","DEBANGXINXINGJIAZHILINGHUOPEIZHIHUNHEA"],["001413","ZRXDLHHA","中融新动力混合A","混合型","ZHONGRONGXINDONGLIHUNHEA"],["001414","ZRXDLHHC","中融新动力混合C","混合型","ZHONGRONGXINDONGLIHUNHEC"],["001415","XCXRHHA","信诚新锐混合A","混合型","XINCHENGXINRUIHUNHEA"],["001416","JSSJQDGP","嘉实事件驱动股票","股票型","JIASHISHIJIANQUDONGGUPIAO"],["001417","HTFYLFWHH","汇添富医疗服务混合","混合型","HUITIANFUYILIAOFUWUHUNHE"],["001418","TDHLCYHHA","泰达宏利创益混合A","混合型","TAIDAHONGLICHUANGYIHUNHEA"],["001419","TDHLXSLHHA","泰达宏利新思路混合A","混合型","TAIDAHONGLIXINSILUHUNHEA"],["001420","NFDSJ300A","南方大数据300A","股票指数","NANFANGDASHUJU300A"],["001421","NFLH","南方量化","股票型","NANFANGLIANGHUA"],["001422","JSCCAXHBHHA","景顺长城安享回报混合A","混合型","JINGSHUNCHANGCHENGANXIANGHUIBAOHUNHEA"],["001423","JSCCAXHBHHC","景顺长城安享回报混合C","混合型","JINGSHUNCHANGCHENGANXIANGHUIBAOHUNHEC"],["001424","BSXQDHHA","博时新起点混合A","混合型","BOSHIXINQIDIANHUNHEA"],["001425","BSXQDHHC","博时新起点混合C","混合型","BOSHIXINQIDIANHUNHEC"],["001426","NFDSJ300C","南方大数据300C","股票指数","NANFANGDASHUJU300C"],["001427","ZSFZHHA","招商丰泽混合A","混合型","ZHAOSHANGFENGZEHUNHEA"],["001428","GYBBHHB","工银保本混合B","保本型","GONGYINBAOBENHUNHEB"],["001429","BSXCFHHA","博时新财富混合A","混合型","BOSHIXINCAIFUHUNHEA"],["001430","ZYLXSYLHPZHH","中邮乐享收益灵活配置混合","混合型","ZHONGYOULEXIANGSHOUYILINGHUOPEIZHIHUNHE"],["001431","FZFBYXLHPZHHA","方正富邦优选灵活配置混合A","混合型","FANGZHENGFUBANGYOUXUANLINGHUOPEIZHIHUNHEA"],["001433","YFDRJHH","易方达瑞景混合","混合型","YIFANGDARUIJINGHUNHE"],["001437","YFDRXHHI","易方达瑞享混合I","混合型","YIFANGDARUIXIANGHUNHEI"],["001438","YFDRXHHE","易方达瑞享混合E","混合型","YIFANGDARUIXIANGHUNHEE"],["001443","YFDRXLHPZHHI","易方达瑞选灵活配置混合I","混合型","YIFANGDARUIXUANLINGHUOPEIZHIHUNHEI"],["001444","YFDRXLHPZHHE","易方达瑞选灵活配置混合E","混合型","YIFANGDARUIXUANLINGHUOPEIZHIHUNHEE"],["001445","HAGQGGZTLHPZHH","华安国企改革主题灵活配置混合","混合型","HUAANGUOQIGAIGEZHUTILINGHUOPEIZHIHUNHE"],["001446","ZSFZHHC","招商丰泽混合C","混合型","ZHAOSHANGFENGZEHUNHEC"],["001447","THHLHH","天弘惠利混合","混合型","TIANHONGHUILIHUNHE"],["001448","HSSYPHHH","华商双翼平衡混合","混合型","HUASHANGSHUANGYIPINGHENGHUNHE"],["001449","HSSQYXHH","华商双驱优选混合","混合型","HUASHANGSHUANGQUYOUXUANHUNHE"],["001450","DFWDZLZQA","东方稳定增利债券A","债券型","DONGFANGWENDINGZENGLIZHAIQUANA"],["001451","DFWDZLZQC","东方稳定增利债券C","债券型","DONGFANGWENDINGZENGLIZHAIQUANC"],["001453","PHHXHHA","鹏华弘鑫混合A","混合型","PENGHUAHONGXINHUNHEA"],["001454","PHHXHHC","鹏华弘鑫混合C","混合型","PENGHUAHONGXINHUNHEC"],["001455","JSCCZZ500ETFLJ","景顺长城中证500ETF联接","联接基金","JINGSHUNCHANGCHENGZHONGZHENG500ETFLIANJIE"],["001456","HTBRZZ2025HHA","华泰柏瑞制造2025混合A","混合型","HUATAIBAIRUIZHIZAO2025HUNHEA"],["001457","HSXCTHH","华商新常态混合","混合型","HUASHANGXINCHANGTAIHUNHE"],["001458","GFZZQZZYXFLJA","广发中证全指主要消费联接A","联接基金","GUANGFAZHONGZHENGQUANZHIZHUYAOXIAOFEILIANJIEA"],["001459","GFZZQZYCLLJA","广发中证全指原材料联接A","联接基金","GUANGFAZHONGZHENGQUANZHIYUANCAILIAOLIANJIEA"],["001460","GFZZQZNYETFLJA","广发中证全指能源ETF联接A","联接基金","GUANGFAZHONGZHENGQUANZHINENGYUANETFLIANJIEA"],["001463","GDYDYLHH","光大一带一路混合","混合型","GUANGDAYIDAIYILUHUNHE"],["001464","GDDXHHA","光大鼎鑫混合A","混合型","GUANGDADINGXINHUNHEA"],["001466","HFYXLHPZHHA","华富永鑫灵活配置混合A","混合型","HUAFUYONGXINLINGHUOPEIZHIHUNHEA"],["001467","HFYXLHPZHHC","华富永鑫灵活配置混合C","混合型","HUAFUYONGXINLINGHUOPEIZHIHUNHEC"],["001468","GFGGHH","广发改革混合","混合型","GUANGFAGAIGEHUNHE"],["001469","GFZZQZJRDCLJA","广发中证全指金融地产联接A","联接基金","GUANGFAZHONGZHENGQUANZHIJINRONGDECHANLIANJIEA"],["001470","RTTXLHPZHH","融通通鑫灵活配置混合","混合型","RONGTONGTONGXINLINGHUOPEIZHIHUNHE"],["001471","RTXNYLHPZHH","融通新能源灵活配置混合","混合型","RONGTONGXINNENGYUANLINGHUOPEIZHIHUNHE"],["001472","RTXNYLHPZHH","融通新能源灵活配置混合(后端)","混合型","RONGTONGXINNENGYUANLINGHUOPEIZHIHUNHE"],["001473","JXDAQZLJXGP","建信大安全战略精选股票","股票型","JIANXINDAANQUANZHANLUEJINGXUANGUPIAO"],["001474","HFFYLHPZ","华福丰盈灵活配置","混合型","HUAFUFENGYINGLINGHUOPEIZHI"],["001475","YFDGFJGHH","易方达国防军工混合","混合型","YIFANGDAGUOFANGJUNGONGHUNHE"],["001476","ZYZNZZGP","中银智能制造股票","股票型","ZHONGYINZHINENGZHIZAOGUPIAO"],["001477","TKXYBHBA","泰康薪意保货币A","货币型","TAIKANGXINYIBAOHUOBIA"],["001478","TKXYBHBB","泰康薪意保货币B","货币型","TAIKANGXINYIBAOHUOBIB"],["001479","ZYFGLDLHPZHH","中邮风格轮动灵活配置混合","混合型","ZHONGYOUFENGGELUNDONGLINGHUOPEIZHIHUNHE"],["001480","CTCZYXHH","财通成长优选混合","混合型","CAITONGCHENGZHANGYOUXUANHUNHE"],["001481","HBXYBPYQSYGPMY","华宝兴业标普油气上游股票美元","QDII-指数","HUABAOXINGYEBIAOPUYOUQISHANGYOUGUPIAOMEIYUAN"],["001482","STMGXXFWGP","上投摩根新兴服务股票","股票型","SHANGTOUMOGENXINXINGFUWUGUPIAO"],["001483","THXLLHPZHH","天弘喜利灵活配置混合","混合型","TIANHONGXILILINGHUOPEIZHIHUNHE"],["001484","THXJZHH","天弘新价值混合","混合型","TIANHONGXINJIAZHIHUNHE"],["001485","HATYYLHH","华安添颐养老混合","混合型","HUAANTIANYIYANGLAOHUNHE"],["001486","THXABBB","天弘鑫安宝保本","保本型","TIANHONGXINANBAOBAOBEN"],["001487","BYYSCYHH","宝盈优势产业混合","混合型","BAOYINGYOUSHICHANYEHUNHE"],["001488","WJRFLHPZHHA","万家瑞丰灵活配置混合A","混合型","WANJIARUIFENGLINGHUOPEIZHIHUNHEA"],["001489","WJRFLHPZHHC","万家瑞丰灵活配置混合C","混合型","WANJIARUIFENGLINGHUOPEIZHIHUNHEC"],["001490","HTFGQCXGP","汇添富国企创新股票","股票型","HUITIANFUGUOQICHUANGXINGUPIAO"],["001491","GTSYLHPZHHA","国泰生益灵活配置混合A","混合型","GUOTAISHENGYILINGHUOPEIZHIHUNHEA"],["001492","PHHRHHA","鹏华弘锐混合A","混合型","PENGHUAHONGRUIHUNHEA"],["001493","PHHRHHC","鹏华弘锐混合C","混合型","PENGHUAHONGRUIHUNHEC"],["001494","XCXXHHA","信诚新鑫混合A","混合型","XINCHENGXINXINHUNHEA"],["001495","DFXJZHHA","东方新价值混合A","混合型","DONGFANGXINJIAZHIHUNHEA"],["001496","GYJJ30GP","工银聚焦30股票","股票型","GONGYINJUJIAO30GUPIAO"],["001497","DCYTLZQE","大成月添利债券E","理财型","DACHENGYUETIANLIZHAIQUANE"],["001498","JXXRHBLHPZHH","建信鑫荣回报灵活配置混合","混合型","JIANXINXINRONGHUIBAOLINGHUOPEIZHIHUNHE"],["001499","GTRYXZZHH","国投瑞银新增长混合","混合型","GUOTOURUIYINXINZENGZHANGHUNHE"],["001500","HDYJHBHH","泓德远见回报混合","混合型","HONGDEYUANJIANHUIBAOHUNHE"],["001501","ZSFYHHA","招商丰裕混合A","混合型","ZHAOSHANGFENGYUHUNHEA"],["001502","ZSFYHHC","招商丰裕混合C","混合型","ZHAOSHANGFENGYUHUNHEC"],["001503","NFLXC","南方利鑫C","混合型","NANFANGLIXINC"],["001504","NFLTC","南方利淘C","混合型","NANFANGLITAOC"],["001505","NFLZC","南方利众C","混合型","NANFANGLIZHONGC"],["001506","JSCCTHHBHHA","景顺长城泰和回报混合A","混合型","JINGSHUNCHANGCHENGTAIHEHUIBAOHUNHEA"],["001507","JSCCTHHBHHC","景顺长城泰和回报混合C","混合型","JINGSHUNCHANGCHENGTAIHEHUIBAOHUNHEC"],["001508","FGXDLLHPZHHA","富国新动力灵活配置混合A","混合型","FUGUOXINDONGLILINGHUOPEIZHIHUNHEA"],["001510","FGXDLLHPZHHC","富国新动力灵活配置混合C","混合型","FUGUOXINDONGLILINGHUOPEIZHIHUNHEC"],["001511","XQXSYDKHH","兴全新视野定开混合","混合型","XINGQUANXINSHIYEDINGKAIHUNHE"],["001512","YFDZZ35NQGZZS","易方达中债3-5年期国债指数","债券指数","YIFANGDAZHONGZHAI35NIANQIGUOZHAIZHISHU"],["001513","YFDXXCYHH","易方达信息产业混合","混合型","YIFANGDAXINXICHANYEHUNHE"],["001515","PADHXXXFC","平安大华新鑫先锋C","混合型","PINGANDAHUAXINXINXIANFENGC"],["001516","DCYYYDQLCZQE","大成月月盈短期理财债券E","理财型","DACHENGYUEYUEYINGDUANQILICAIZHAIQUANE"],["001517","DCJYLHPZHHA","大成景裕灵活配置混合A","混合型","DACHENGJINGYULINGHUOPEIZHIHUNHEA"],["001518","WJRX","万家瑞兴","混合型","WANJIARUIXING"],["001521","GSABCZYXGP","国寿安保成长优选股票","股票型","GUOSHOUANBAOCHENGZHANGYOUXUANGUPIAO"],["001522","BSXCLLHPZHHA","博时新策略灵活配置混合A","混合型","BOSHIXINCELUELINGHUOPEIZHIHUNHEA"],["001523","BSXCLLHPZHHC","博时新策略灵活配置混合C","混合型","BOSHIXINCELUELINGHUOPEIZHIHUNHEC"],["001524","HTBRJXHBHH","华泰柏瑞精选回报混合","混合型","HUATAIBAIRUIJINGXUANHUIBAOHUNHE"],["001526","XYAXBHBA","鑫元安鑫宝货币A","货币型","XINYUANANXINBAOHUOBIA"],["001527","XYAXBHBB","鑫元安鑫宝货币B","货币型","XINYUANANXINBAOHUOBIB"],["001528","NAXJZZGP","诺安先进制造股票","股票型","NUOANXIANJINZHIZAOGUPIAO"],["001529","THYSB","天弘云商宝","货币型","TIANHONGYUNSHANGBAO"],["001530","WJRFLHPZHH","万家瑞富灵活配置混合","混合型","WANJIARUIFULINGHUOPEIZHIHUNHE"],["001531","ZSAYBBHH","招商安益保本混合","保本型","ZHAOSHANGANYIBAOBENHUNHE"],["001533","HTBRALHH","华泰柏瑞爱利混合","混合型","HUATAIBAIRUIAILIHUNHE"],["001534","HBWWHLHH","华宝万物互联混合","混合型","HUABAOWANWUHULIANHUNHE"],["001535","JSCCGGJYLHPZHH","景顺长城改革机遇灵活配置混合","混合型","JINGSHUNCHANGCHENGGAIGEJIYULINGHUOPEIZHIHUNHE"],["001536","NFJX","南方君选","混合型","NANFANGJUNXUAN"],["001537","ZJGGHLHH","中加改革红利混合","混合型","ZHONGJIAGAIGEHONGLIHUNHE"],["001538","STMGKJQYLHPZHH","上投摩根科技前沿灵活配置混合","混合型","SHANGTOUMOGENKEJIQIANYANLINGHUOPEIZHIHUNHE"],["001539","JSZZJRDCETFLJ","嘉实中证金融地产ETF联接","联接基金","JIASHIZHONGZHENGJINRONGDICHANETFLIANJIE"],["001540","ZSHJZXQD","浙商汇金转型驱动","混合型","ZHESHANGHUIJINZHUANXINGQUDONG"],["001541","HTFMYXDLGP","汇添富民营新动力股票","股票型","HUITIANFUMINYINGXINDONGLIGUPIAO"],["001542","GTHLWGP","国泰互联网+股票","股票型","GUOTAIHULIANWANGGUPIAO"],["001543","BYXRHH","宝盈新锐混合","混合型","BAOYINGXINRUIHUNHE"],["001545","BSYJCZ","博时裕嘉纯债","债券型","BOSHIYUJIACHUNZHAI"],["001546","BSYYCZZQ","博时裕盈纯债债券","债券型","BOSHIYUYINGCHUNZHAIZHAIQUAN"],["001547","XYJHLHPZHHA","兴业聚惠灵活配置混合A","混合型","XINGYEJUHUILINGHUOPEIZHIHUNHEA"],["001548","THSZ50ZSA","天弘上证50指数A","股票指数","TIANHONGSHANGZHENG50ZHISHUA"],["001549","THSZ50ZSC","天弘上证50指数C","股票指数","TIANHONGSHANGZHENG50ZHISHUC"],["001550","THZZYY100A","天弘中证医药100A","股票指数","TIANHONGZHONGZHENGYIYAO100A"],["001551","THZZYY100C","天弘中证医药100C","股票指数","TIANHONGZHONGZHENGYIYAO100C"],["001552","THZZZQBXA","天弘中证证券保险A","股票指数","TIANHONGZHONGZHENGZHENGQUANBAOXIANA"],["001553","THZZZQBXC","天弘中证证券保险C","股票指数","TIANHONGZHONGZHENGZHENGQUANBAOXIANC"],["001554","THZZQZYSA","天弘中证全指运输A","股票指数","TIANHONGZHONGZHENGQUANZHIYUNSHUA"],["001555","THZZQZYSC","天弘中证全指运输C","股票指数","TIANHONGZHONGZHENGQUANZHIYUNSHUC"],["001556","THZZQZFDCA","天弘中证全指房地产A","股票指数","TIANHONGZHONGZHENGQUANZHIFANGDICHANA"],["001557","THZZQZFDCC","天弘中证全指房地产C","股票指数","TIANHONGZHONGZHENGQUANZHIFANGDICHANC"],["001558","THZZDZSPGPZSA","天弘中证大宗商品股票指数A","股票指数","TIANHONGZHONGZHENGDAZONGSHANGPINGUPIAOZHISHUA"],["001559","THZZDZSPGPZSC","天弘中证大宗商品股票指数C","股票指数","TIANHONGZHONGZHENGDAZONGSHANGPINGUPIAOZHISHUC"],["001560","THZZYDHLWA","天弘中证移动互联网A","股票指数","TIANHONGZHONGZHENGYIDONGHULIANWANGA"],["001561","THZZYDHLWC","天弘中证移动互联网C","股票指数","TIANHONGZHONGZHENGYIDONGHULIANWANGC"],["001563","HFJKWYLHPZHH","华富健康文娱灵活配置混合","混合型","HUAFUJIANKANGWENYULINGHUOPEIZHIHUNHE"],["001564","DFHJDDSJHH","东方红京东大数据混合","混合型","DONGFANGHONGJINGDONGDASHUJUHUNHE"],["001565","YYLHHHFQS","永赢量化混合发起式","混合型","YONGYINGLIANGHUAHUNHEFAQISHI"],["001566","NFLDA","南方利达A","混合型","NANFANGLIDAA"],["001567","NFLDC","南方利达C","混合型","NANFANGLIDAC"],["001568","TDHLZLHH","泰达宏利增利混合","混合型","TAIDAHONGLIZENGLIHUNHE"],["001569","TXGCQDLHPZHH","泰信国策驱动灵活配置混合","混合型","TAIXINGUOCEQUDONGLINGHUOPEIZHIHUNHE"],["001570","NFLAA","南方利安A","混合型","NANFANGLIANA"],["001571","JHPSA","嘉合磐石A","混合型","JIAHEPANSHIA"],["001572","JHPSC","嘉合磐石C","混合型","JIAHEPANSHIC"],["001574","ZHHGHLHH","中海混改红利混合","混合型","ZHONGHAIHUNGAIHONGLIHUNHE"],["001575","HFWJZQ","华福稳健债券","债券型","HUAFUWENJIANZHAIQUAN"],["001577","JSDJCLGP","嘉实低价策略股票","股票型","JIASHIDIJIACELUEGUPIAO"],["001578","BSYRCZZQ","博时裕瑞纯债债券","债券型","BOSHIYURUICHUNZHAIZHAIQUAN"],["001580","NFLAC","南方利安C","混合型","NANFANGLIANC"],["001581","HAHGSTJXLHPZHH","华安沪港深通精选灵活配置混合","混合型","HUAANHUGANGSHENTONGJINGXUANLINGHUOPEIZHIHUNHE"],["001582","DCJHLHPZHHA","大成景辉灵活配置混合A","混合型","DACHENGJINGHUILINGHUOPEIZHIHUNHEA"],["001583","AXXCTGP","安信新常态股票","股票型","ANXINXINCHANGTAIGUPIAO"],["001584","GTRYXHLLHPZHHA","国投瑞银新活力灵活配置混合A","混合型","GUOTOURUIYINXINHUOLILINGHUOPEIZHIHUNHEA"],["001585","GTRYXHLLHPZHHC","国投瑞银新活力灵活配置混合C","混合型","GUOTOURUIYINXINHUOLILINGHUOPEIZHIHUNHEC"],["001586","THZZ100ZSA","天弘中证100指数A","股票指数","TIANHONGZHONGZHENG100ZHISHUA"],["001587","THZZ100ZSC","天弘中证100指数C","股票指数","TIANHONGZHONGZHENG100ZHISHUC"],["001588","THZZ800ZSA","天弘中证800指数A","股票指数","TIANHONGZHONGZHENG800ZHISHUA"],["001589","THZZ800ZSC","天弘中证800指数C","股票指数","TIANHONGZHONGZHENG800ZHISHUC"],["001590","THZZHBCYA","天弘中证环保产业A","股票指数","TIANHONGZHONGZHENGHUANBAOCHANYEA"],["001591","THZZHBCYC","天弘中证环保产业C","股票指数","TIANHONGZHONGZHENGHUANBAOCHANYEC"],["001592","THCYBA","天弘创业板A","股票指数","TIANHONGCHUANGYEBANA"],["001593","THCYBC","天弘创业板C","股票指数","TIANHONGCHUANGYEBANC"],["001594","THZZYHZSA","天弘中证银行指数A","股票指数","TIANHONGZHONGZHENGYINHANGZHISHUA"],["001595","THZZYHZSC","天弘中证银行指数C","股票指数","TIANHONGZHONGZHENGYINHANGZHISHUC"],["001596","XCXZA","信诚新泽A","混合型","XINCHENGXINZEA"],["001597","ZSFRHHA","招商丰融混合A","混合型","ZHAOSHANGFENGRONGHUNHEA"],["001598","ZSFRHHC","招商丰融混合C","混合型","ZHAOSHANGFENGRONGHUNHEC"],["001599","THZZGDZBZZA","天弘中证高端装备制造A","股票指数","TIANHONGZHONGZHENGGAODUANZHUANGBEIZHIZAOA"],["001600","THZZGDZBZZC","天弘中证高端装备制造C","股票指数","TIANHONGZHONGZHENGGAODUANZHUANGBEIZHIZAOC"],["001601","XYXXSYLHPZHHA","鑫元鑫新收益灵活配置混合A","混合型","XINYUANXINXINSHOUYILINGHUOPEIZHIHUNHEA"],["001602","XYXXSYLHPZHHC","鑫元鑫新收益灵活配置混合C","混合型","XINYUANXINXINSHOUYILINGHUOPEIZHIHUNHEC"],["001603","YFDAYHBHH","易方达安盈回报混合","混合型","YIFANGDAANYINGHUIBAOHUNHE"],["001604","ZSHJZXSJLHPZHH","浙商汇金转型升级灵活配置混合","混合型","ZHESHANGHUIJINZHUANXINGSHENGJILINGHUOPEIZHIHUNHE"],["001605","GFHGSCZJXGP","国富沪港深成长精选股票","股票型","GUOFUHUGANGSHENCHENGZHANGJINGXUANGUPIAO"],["001606","NYGY40HH","农银工业4.0混合","混合型","NONGYINGONGYE40HUNHE"],["001607","YDCLYXA","英大策略优选A","混合型","YINGDACELUEYOUXUANA"],["001608","YDCLYXC","英大策略优选C","混合型","YINGDACELUEYOUXUANC"],["001609","PADHXXHHA","平安大华鑫享混合A","混合型","PINGANDAHUAXINXIANGHUNHEA"],["001610","PADHXXHHC","平安大华鑫享混合C","混合型","PINGANDAHUAXINXIANGHUNHEC"],["001611","THZZXXYLZSA","天弘中证休闲娱乐指数A","股票指数","TIANHONGZHONGZHENGXIUXIANYULEZHISHUA"],["001612","THZZXXYLZSC","天弘中证休闲娱乐指数C","股票指数","TIANHONGZHONGZHENGXIUXIANYULEZHISHUC"],["001613","CCJXBB","长城久祥保本","保本型","CHANGCHENGJIUXIANGBAOBEN"],["001614","DFQYFZHH","东方区域发展混合","混合型","DONGFANGQUYUFAZHANHUNHE"],["001615","ZORSDQKFHH","中欧睿尚定期开放混合","混合型","ZHONGOURUISHANGDINGQIKAIFANGHUNHE"],["001616","JSHBDTGP","嘉实环保低碳股票","股票型","JIASHIHUANBAODITANGUPIAO"],["001617","THZZDZZSA","天弘中证电子指数A","股票指数","TIANHONGZHONGZHENGDIANZIZHISHUA"],["001618","THZZDZZSC","天弘中证电子指数C","股票指数","TIANHONGZHONGZHENGDIANZIZHISHUC"],["001620","JSXJYHHFQS","嘉实新机遇混合发起式","混合型","JIASHIXINJIYUHUNHEFAQISHI"],["001621","GJJTTHBC","国金金腾通货币C","货币型","GUOJINJINTENGTONGHUOBIC"],["001622","XHXRHH","新华鑫锐混合","混合型","XINHUAXINRUIHUNHE"],["001623","XYGQGGHH","兴业国企改革混合","混合型","XINGYEGUOQIGAIGEHUNHE"],["001624","XYTTYHBA","兴业添天盈货币A","货币型","XINGYETIANTIANYINGHUOBIA"],["001625","XYTTYHBB","兴业添天盈货币B","货币型","XINGYETIANTIANYINGHUOBIB"],["001626","GTYQGGGP","国泰央企改革股票","股票型","GUOTAIYANGQIGAIGEGUPIAO"],["001627","RTXYXLHPZHH","融通新优选灵活配置混合","混合型","RONGTONGXINYOUXUANLINGHUOPEIZHIHUNHE"],["001628","ZSTYWHXXGP","招商体育文化休闲股票","股票型","ZHAOSHANGTIYUWENHUAXIUXIANGUPIAO"],["001629","THZZJSJZSA","天弘中证计算机指数A","股票指数","TIANHONGZHONGZHENGJISUANJIZHISHUA"],["001630","THZZJSJZSC","天弘中证计算机指数C","股票指数","TIANHONGZHONGZHENGJISUANJIZHISHUC"],["001631","THZZSPYLZSA","天弘中证食品饮料指数A","股票指数","TIANHONGZHONGZHENGSHIPINYINLIAOZHISHUA"],["001632","THZZSPYLZSC","天弘中证食品饮料指数C","股票指数","TIANHONGZHONGZHENGSHIPINYINLIAOZHISHUC"],["001633","WJRXHHA","万家瑞祥混合A","混合型","WANJIARUIXIANGHUNHEA"],["001634","WJRXHHC","万家瑞祥混合C","混合型","WANJIARUIXIANGHUNHEC"],["001635","WJRYLHPZHHA","万家瑞益灵活配置混合A","混合型","WANJIARUIYILINGHUOPEIZHIHUNHEA"],["001636","WJRYLHPZHHC","万家瑞益灵活配置混合C","混合型","WANJIARUIYILINGHUOPEIZHIHUNHEC"],["001637","JSTXZXGDSJCLGP","嘉实腾讯自选股大数据策略股票","股票型","JIASHITENGXUNZIXUANGUDASHUJUCELUEGUPIAO"],["001638","QHKYYSLCGPC","前海开源优势蓝筹股票C","股票型","QIANHAIKAIYUANYOUSHILANCHOUGUPIAOC"],["001639","JSXCTHHA","嘉实新常态混合A","混合型","JIASHIXINCHANGTAIHUNHEA"],["001640","JSXCTHHC","嘉实新常态混合C","混合型","JIASHIXINCHANGTAIHUNHEC"],["001641","FGJDSYDCLHH","富国绝对收益多策略混合","混合型","FUGUOJUEDUISHOUYIDUOCELUEHUNHE"],["001643","HFJXZZXFGPA","汇丰晋信智造先锋股票A","股票型","HUIFENGJINXINZHIZAOXIANFENGGUPIAOA"],["001644","HFJXZZXFGPC","汇丰晋信智造先锋股票C","股票型","HUIFENGJINXINZHIZAOXIANFENGGUPIAOC"],["001645","GTDJKGP","国泰大健康股票","股票型","GUOTAIDAJIANKANGGUPIAO"],["001647","THJLLHPZHH","天弘聚利灵活配置混合","混合型","TIANHONGJULILINGHUOPEIZHIHUNHE"],["001648","GYXJZLHPZHH","工银新价值灵活配置混合","混合型","GONGYINXINJIAZHILINGHUOPEIZHIHUNHE"],["001650","GYFSHBLHPZHHA","工银丰收回报灵活配置混合A","混合型","GONGYINFENGSHOUHUIBAOLINGHUOPEIZHIHUNHEA"],["001651","GYXLCGP","工银新蓝筹股票","股票型","GONGYINXINLANCHOUGUPIAO"],["001652","DBCZ18GYDKZA","德邦纯债18个月定开债A","定开债券","DEBANGCHUNZHAI18GEYUEDINGKAIZHAIA"],["001653","DBCZ18GYDKZC","德邦纯债18个月定开债C","定开债券","DEBANGCHUNZHAI18GEYUEDINGKAIZHAIC"],["001654","GLATXLHPZHHC","国联安添鑫灵活配置混合C","混合型","GUOLIANANTIANXINLINGHUOPEIZHIHUNHEC"],["001655","DMSY18GYKFZQ","大摩收益18个月开放债券","定开债券","DAMOSHOUYI18GEYUEKAIFANGZHAIQUAN"],["001657","CAXFLXHH","长安鑫富领先混合","混合型","CHANGANXINFULINGXIANHUNHE"],["001659","FADXDLHH","富安达新动力混合","混合型","FUANDAXINDONGLIHUNHE"],["001661","BSXYZCZZQC","博时信用债纯债债券C","债券型","BOSHIXINYONGZHAICHUNZHAIZHAIQUANC"],["001662","CJHGSJXHH","创金沪港深精选混合","混合型","CHUANGJINHUGANGSHENJINGXUANHUNHE"],["001663","ZYHLWGP","中银互联网+股票","股票型","ZHONGYINHULIANWANGGUPIAO"],["001664","PADHXAHHA","平安大华鑫安混合A","混合型","PINGANDAHUAXINANHUNHEA"],["001665","PADHXAHHC","平安大华鑫安混合C","混合型","PINGANDAHUAXINANHUNHEC"],["001666","PHTLBHB","鹏华添利宝货币","货币型","PENGHUATIANLIBAOHUOBI"],["001667","NFZXHH","南方转型混合","混合型","NANFANGZHUANXINGHUNHE"],["001668","HTFQQHLHH","汇添富全球互联混合","QDII","HUITIANFUQUANQIUHULIANHUNHE"],["001669","NAJXBHBC","诺安聚鑫宝货币C","货币型","NUOANJUXINBAOHUOBIC"],["001670","CCXCLHHA","长城新策略混合A","混合型","CHANGCHENGXINCELUEHUNHEA"],["001671","CCXCLHHC","长城新策略混合C","混合型","CHANGCHENGXINCELUEHUNHEC"],["001672","GSABZHSHGP","国寿安保智慧生活股票","股票型","GUOSHOUANBAOZHIHUISHENGHUOGUPIAO"],["001673","HTHTYZCZA","红塔红土优质成长A","混合型","HONGTAHONGTUYOUZHICHENGZHANGA"],["001674","HTHTYZCZC","红塔红土优质成长C","混合型","HONGTAHONGTUYOUZHICHENGZHANGC"],["001675","JXTFA","江信同福A","混合型","JIANGXINTONGFUA"],["001676","JXTFC","江信同福C","混合型","JIANGXINTONGFUC"],["001677","ZYZLXXCYGP","中银战略新兴产业股票","股票型","ZHONGYINZHANLUEXINXINGCHANYEGUPIAO"],["001679","QHKYZGXQZCHHA","前海开源中国稀缺资产混合A","混合型","QIANHAIKAIYUANZHONGGUOXIQUEZICHANHUNHEA"],["001680","JTJLLHPZHH","九泰久利灵活配置混合","混合型","JIUTAIJIULILINGHUOPEIZHIHUNHE"],["001681","XHJJJZLHPZHH","新华积极价值灵活配置混合","混合型","XINHUAJIJIJIAZHILINGHUOPEIZHIHUNHE"],["001682","XHXHBHH","新华鑫回报混合","混合型","XINHUAXINHUIBAOHUNHE"],["001683","HXXJJHH","华夏新经济混合","混合型","HUAXIAXINJINGJIHUNHE"],["001685","HTFHGSXJZGP","汇添富沪港深新价值股票","股票型","HUITIANFUHUGANGSHENXINJIAZHIGUPIAO"],["001686","AXXDLHHA","安信新动力混合A","混合型","ANXINXINDONGLIHUNHEA"],["001687","AXXDLHHC","安信新动力混合C","混合型","ANXINXINDONGLIHUNHEC"],["001688","JSXQDHHA","嘉实新起点混合A","混合型","JIASHIXINQIDIANHUNHEA"],["001691","NFXGCZQDII","南方香港成长(QDII)","QDII","NANFANGXIANGGANGCHENGZHANGQDII"],["001692","NFGCDL","南方国策动力","股票型","NANFANGGUOCEDONGLI"],["001693","ZSZL1GYQLCZQC","招商招利1个月期理财债券C","理财型","ZHAOSHANGZHAOLI1GEYUEQILICAIZHAIQUANC"],["001694","HAHGSWYZZHH","华安沪港深外延增长混合","混合型","HUAANHUGANGSHENWAIYANZENGZHANGHUNHE"],["001695","HDHYHH","泓德泓业混合","混合型","HONGDEHONGYEHUNHE"],["001697","DCHFBHBA","大成恒丰宝货币A","货币型","DACHENGHENGFENGBAOHUOBIA"],["001698","DCHFBHBB","大成恒丰宝货币B","货币型","DACHENGHENGFENGBAOHUOBIB"],["001699","DCHFBHBE","大成恒丰宝货币E","货币型","DACHENGHENGFENGBAOHUOBIE"],["001700","JXXSHBLHPZHH","建信鑫盛回报灵活配置混合","混合型","JIANXINXINSHENGHUIBAOLINGHUOPEIZHIHUNHE"],["001701","ZRCYSJHH","中融产业升级混合","混合型","ZHONGRONGCHANYESHENGJIHUNHE"],["001702","DFCXKJHH","东方创新科技混合","混合型","DONGFANGCHUANGXINKEJIHUNHE"],["001703","YHHGSZZGP","银华沪港深增长股票","股票型","YINHUAHUGANGSHENZENGZHANGGUPIAO"],["001704","GTRYJBBBHH","国投瑞银进宝保本混合","保本型","GUOTOURUIYINJINBAOBAOBENHUNHE"],["001705","HDZLZXGP","泓德战略转型股票","股票型","HONGDEZHANLUEZHUANXINGGUPIAO"],["001706","NAJJHBHH","诺安积极回报混合","混合型","NUOANJIJIHUIBAOHUNHE"],["001708","DXGGJXHH","东兴改革精选混合","混合型","DONGXINGGAIGEJINGXUANHUNHE"],["001709","HFWLSJLHPZHH","华富物联世界灵活配置混合","混合型","HUAFUWULIANSHIJIELINGHUOPEIZHIHUNHE"],["001710","AXXQSHHA","安信新趋势混合A","混合型","ANXINXINQUSHIHUNHEA"],["001711","AXXQSHHC","安信新趋势混合C","混合型","ANXINXINQUSHIHUNHEC"],["001712","DFHYSJXHH","东方红优势精选混合","混合型","DONGFANGHONGYOUSHIJINGXUANHUNHE"],["001713","HRYDZC100ETFLJ","华润元大中创100ETF联接","联接基金","HUARUNYUANDAZHONGCHUANG100ETFLIANJIE"],["001714","GYWTCYGP","工银文体产业股票","股票型","GONGYINWENTICHANYEGUPIAO"],["001715","GYXJDHHA","工银新焦点混合A","混合型","GONGYINXINJIAODIANHUNHEA"],["001716","GYXQSLHPZHHA","工银新趋势灵活配置混合A","混合型","GONGYINXINQUSHILINGHUOPEIZHIHUNHEA"],["001717","GYQYYLGP","工银前沿医疗股票","股票型","GONGYINQIANYANYILIAOGUPIAO"],["001718","GYWLCYGP","工银物流产业股票","股票型","GONGYINWULIUCHANYEGUPIAO"],["001719","GYGJZLGP","工银国家战略股票","股票型","GONGYINGUOJIAZHANLUEGUPIAO"],["001720","GYXZLHH","工银新增利混合","混合型","GONGYINXINZENGLIHUNHE"],["001721","GYXZYHH","工银新增益混合","混合型","GONGYINXINZENGYIHUNHE"],["001722","GYYHLHH","工银银和利混合","混合型","GONGYINYINHELIHUNHE"],["001723","HSXDLLHPZHH","华商新动力灵活配置混合","混合型","HUASHANGXINDONGLILINGHUOPEIZHIHUNHE"],["001724","SWLXDCLLHPZHHC","申万菱信多策略灵活配置混合C","混合型","SHENWANLINGXINDUOCELUELINGHUOPEIZHIHUNHEC"],["001725","HTFGDZZGP","汇添富高端制造股票","股票型","HUITIANFUGAODUANZHIZAOGUPIAO"],["001726","HTFXXXFGP","汇添富新兴消费股票","股票型","HUITIANFUXINXINGXIAOFEIGUPIAO"],["001727","SWLXAXHBHHC","申万菱信安鑫回报混合C","混合型","SHENWANLINGXINANXINHUIBAOHUNHEC"],["001728","YHZLXXDKHH","银华战略新兴定开混合","混合型","YINHUAZHANLUEXINXINGDINGKAIHUNHE"],["001729","YHNXTZDKHH","银华逆向投资定开混合","混合型","YINHUANIXIANGTOUZIDINGKAIHUNHE"],["001730","HFDJK","华福大健康","混合型","HUAFUDAJIANKANG"],["001733","TDHLLHGP","泰达宏利量化股票","股票型","TAIDAHONGLILIANGHUAGUPIAO"],["001734","GFBFDSJCZHHA","广发百发大数据成长混合A","混合型","GUANGFABAIFADASHUJUCHENGZHANGHUNHEA"],["001735","GFBFDSJCZHHE","广发百发大数据成长混合E","混合型","GUANGFABAIFADASHUJUCHENGZHANGHUNHEE"],["001736","YXYFYJSH","圆信永丰优加生活","股票型","YUANXINYONGFENGYOUJIASHENGHUO"],["001737","DMHGSXJZHH","大摩沪港深新价值混合","混合型","DAMOHUGANGSHENXINJIAZHIHUNHE"],["001739","ZRRAEHBB","中融融安二号保本","保本型","ZHONGRONGRONGANERHAOBAOBEN"],["001740","GDZGZZ2025HH","光大中国制造2025混合","混合型","GUANGDAZHONGGUOZHIZAO2025HUNHE"],["001741","GFBFDSJJXHHA","广发百发大数据精选混合A","混合型","GUANGFABAIFADASHUJUJINGXUANHUNHEA"],["001742","GFBFDSJJXHHE","广发百发大数据精选混合E","混合型","GUANGFABAIFADASHUJUJINGXUANHUNHEE"],["001743","NAYXHBHH","诺安优选回报混合","混合型","NUOANYOUXUANHUIBAOHUNHE"],["001744","NAJQHBHH","诺安进取回报混合","混合型","NUOANJINQUHUIBAOHUNHE"],["001750","JSCCJRSYDKZ","景顺长城景瑞收益定开债","定开债券","JINGSHUNCHANGCHENGJINGRUISHOUYIDINGKAIZHAI"],["001751","HSXYZQZQA","华商信用增强债券A","债券型","HUASHANGXINYONGZENGQIANGZHAIQUANA"],["001752","HSXYZQZQC","华商信用增强债券C","债券型","HUASHANGXINYONGZENGQIANGZHAIQUANC"],["001753","HTCXXXCYHH","红土创新新兴产业混合","混合型","HONGTUCHUANGXINXINXINGCHANYEHUNHE"],["001754","YYLHLHPZHHFQS","永赢量化灵活配置混合发起式","混合型","YONGYINGLIANGHUALINGHUOPEIZHIHUNHEFAQISHI"],["001755","JSXSLHH","嘉实新思路混合","混合型","JIASHIXINSILUHUNHE"],["001756","JSCLYXHH","嘉实策略优选混合","混合型","JIASHICELUEYOUXUANHUNHE"],["001757","JSZTZQHH","嘉实主题增强混合","混合型","JIASHIZHUTIZENGQIANGHUNHE"],["001758","JSYJZQHH","嘉实研究增强混合","混合型","JIASHIYANJIUZENGQIANGHUNHE"],["001759","JSCZZQHH","嘉实成长增强混合","混合型","JIASHICHENGZHANGZENGQIANGHUNHE"],["001760","JSCXCZHH","嘉实创新成长混合","混合型","JIASHICHUANGXINCHENGZHANGHUNHE"],["001761","GFAHHBHHA","广发安宏回报混合A","混合型","GUANGFAANHONGHUIBAOHUNHEA"],["001762","GFAHHBHHC","广发安宏回报混合C","混合型","GUANGFAANHONGHUIBAOHUNHEC"],["001763","GFDCLHH","广发多策略混合","混合型","GUANGFADUOCELUEHUNHE"],["001764","GFHGSXJYGP","广发沪港深新机遇股票","股票型","GUANGFAHUGANGSHENXINJIYUGUPIAO"],["001765","QHKYJXHHA","前海开源嘉鑫混合A","混合型","QIANHAIKAIYUANJIAXINHUNHEA"],["001766","STMGYLJKGP","上投摩根医疗健康股票","股票型","SHANGTOUMOGENYILIAOJIANKANGGUPIAO"],["001767","HBZGHLGPRMB","华宝中国互联股票人民币","QDII","HUABAOZHONGGUOHULIANGUPIAORENMINBI"],["001768","HBZGHLGPMY","华宝中国互联股票美元","QDII","HUABAOZHONGGUOHULIANGUPIAOMEIYUAN"],["001769","YFDRHHHFQS","易方达瑞惠混合发起式","混合型","YIFANGDARUIHUIHUNHEFAQISHI"],["001770","QHKYJXHHC","前海开源嘉鑫混合C","混合型","QIANHAIKAIYUANJIAXINHUNHEC"],["001772","NFXFHL","南方消费活力","混合型","NANFANGXIAOFEIHUOLI"],["001773","ZSFQHHA","招商丰庆混合A","混合型","ZHAOSHANGFENGQINGHUNHEA"],["001774","ZSFQHHC","招商丰庆混合C","混合型","ZHAOSHANGFENGQINGHUNHEC"],["001775","PHHTC","鹏华弘泰C","混合型","PENGHUAHONGTAIC"],["001776","ZOXLZQ","中欧兴利债券","债券型","ZHONGOUXINGLIZHAIQUAN"],["001777","DBDYHBLHPZHHA","德邦多元回报灵活配置混合A","混合型","DEBANGDUOYUANHUIBAOLINGHUOPEIZHIHUNHEA"],["001778","DBDYHBLHPZHHC","德邦多元回报灵活配置混合C","混合型","DEBANGDUOYUANHUIBAOLINGHUOPEIZHIHUNHEC"],["001779","ZRWJTLZQ","中融稳健添利债券","债券型","ZHONGRONGWENJIANTIANLIZHAIQUAN"],["001781","JXXDFWYGP","建信现代服务业股票","股票型","JIANXINXIANDAIFUWUYEGUPIAO"],["001782","JTJYHHA","九泰久益混合A","混合型","JIUTAIJIUYIHUNHEA"],["001785","MSJYSSZLZQD","民生加银岁岁增利债券D","定开债券","MINSHENGJIAYINSUISUIZENGLIZHAIQUAND"],["001786","GTXYLHPZHH","国泰信益灵活配置混合","混合型","GUOTAIXINYILINGHUOPEIZHIHUNHE"],["001787","ZOJYHBA","中欧骏盈货币A","货币型","ZHONGOUJUNYINGHUOBIA"],["001788","ZOJYHBB","中欧骏盈货币B","货币型","ZHONGOUJUNYINGHUOBIB"],["001789","GTLHSYLHPZHH","国泰量化收益灵活配置混合","混合型","GUOTAILIANGHUASHOUYILINGHUOPEIZHIHUNHE"],["001791","DCJDSYCLHHA","大成绝对收益策略混合A","混合型","DACHENGJUEDUISHOUYICELUEHUNHEA"],["001792","DCJDSYCLHHC","大成绝对收益策略混合C","混合型","DACHENGJUEDUISHOUYICELUEHUNHEC"],["001794","HFCYZQ","华福朝阳债券","债券型","HUAFUCHAOYANGZHAIQUAN"],["001795","STMGWTXXLHPZHH","上投摩根文体休闲灵活配置混合","混合型","SHANGTOUMOGENWENTIXIUXIANLINGHUOPEIZHIHUNHE"],["001796","HTFAXZXHHA","汇添富安鑫智选混合A","混合型","HUITIANFUANXINZHIXUANHUNHEA"],["001797","HRXLLHPZHH","华融新利灵活配置混合","混合型","HUARONGXINLILINGHUOPEIZHIHUNHE"],["001798","TKXHBLHPZHHA","泰康新回报灵活配置混合A","混合型","TAIKANGXINHUIBAOLINGHUOPEIZHIHUNHEA"],["001799","TKXHBLHPZHHC","泰康新回报灵活配置混合C","混合型","TAIKANGXINHUIBAOLINGHUOPEIZHIHUNHEC"],["001800","HAXLXBBHH","华安新乐享保本混合","保本型","HUAANXINLEXIANGBAOBENHUNHE"],["001801","HTFDXHHA","汇添富达欣混合A","混合型","HUITIANFUDAXINHUNHEA"],["001802","YFDRCHHI","易方达瑞财混合I","混合型","YIFANGDARUICAIHUNHEI"],["001803","YFDRCHHE","易方达瑞财混合E","混合型","YIFANGDARUICAIHUNHEE"],["001808","YHHLWZTLHPZHH","银华互联网主题灵活配置混合","混合型","YINHUAHULIANWANGZHUTILINGHUOPEIZHIHUNHE"],["001809","ZXJTZXWLW","中信建投智信物联网","混合型","ZHONGXINJIANTOUZHIXINWULIANWANG"],["001810","ZOQLJZLHPZHH","中欧潜力价值灵活配置混合","混合型","ZHONGOUQIANLIJIAZHILINGHUOPEIZHIHUNHE"],["001811","ZOMRXCTHH","中欧明睿新常态混合","混合型","ZHONGOUMINGRUIXINCHANGTAIHUNHE"],["001812","JSHBE","嘉实货币E","货币型","JIASHIHUOBIE"],["001813","GTFYLHPZHH","国泰福益灵活配置混合","混合型","GUOTAIFUYILINGHUOPEIZHIHUNHE"],["001814","XHAXEHBB","新华阿鑫二号保本","保本型","XINHUAAXINERHAOBAOBEN"],["001815","HTBRJLDLHHA","华泰柏瑞激励动力混合A","混合型","HUATAIBAIRUIJILIDONGLIHUNHEA"],["001816","HTFXRJXHHA","汇添富新睿精选混合A","混合型","HUITIANFUXINRUIJINGXUANHUNHEA"],["001819","XQWYZQ","兴全稳益债券","债券型","XINGQUANWENYIZHAIQUAN"],["001820","XQTTYHBA","兴全天添益货币A","货币型","XINGQUANTIANTIANYIHUOBIA"],["001821","XQTTYHBB","兴全天添益货币B","货币型","XINGQUANTIANTIANYIHUOBIB"],["001822","HSZNSHLHPZHH","华商智能生活灵活配置混合","混合型","HUASHANGZHINENGSHENGHUOLINGHUOPEIZHIHUNHE"],["001823","GDDXHHC","光大鼎鑫混合C","混合型","GUANGDADINGXINHUNHEC"],["001824","BSHGSCZQY","博时沪港深成长企业","混合型","BOSHIHUGANGSHENCHENGZHANGQIYE"],["001825","JXZGZZ2025","建信中国制造2025","股票型","JIANXINZHONGGUOZHIZAO2025"],["001826","GSABZJBHB","国寿安保增金宝货币","货币型","GUOSHOUANBAOZENGJINBAOHUOBI"],["001827","FGYJYXHGSHH","富国研究优选沪港深混合","混合型","FUGUOYANJIUYOUXUANHUGANGSHENHUNHE"],["001829","BXRFZGZZZT","北信瑞丰中国智造主题","混合型","BEIXINRUIFENGZHONGGUOZHIZAOZHUTI"],["001830","RTKJCZLHPZHH","融通跨界成长灵活配置混合","混合型","RONGTONGKUAJIECHENGZHANGLINGHUOPEIZHIHUNHE"],["001831","RTKJCZLHPZHH","融通跨界成长灵活配置混合(后端)","混合型","RONGTONGKUAJIECHENGZHANGLINGHUOPEIZHIHUNHE"],["001834","CSZLXXCYHHC","长盛战略新兴产业混合C","混合型","CHANGSHENGZHANLUEXINXINGCHANYEHUNHEC"],["001837","QHKYHGSLCJXHH","前海开源沪港深蓝筹精选混合","混合型","QIANHAIKAIYUANHUGANGSHENLANCHOUJINGXUANHUNHE"],["001838","GTRYGJAQHH","国投瑞银国家安全混合","混合型","GUOTOURUIYINGUOJIAANQUANHUNHE"],["001839","JTJXLHPZHH","九泰久兴灵活配置混合","混合型","JIUTAIJIUXINGLINGHUOPEIZHIHUNHE"],["001840","ZSFXHHC","招商丰享混合C","混合型","ZHAOSHANGFENGXIANGHUNHEC"],["001841","ZSFXHHA","招商丰享混合A","混合型","ZHAOSHANGFENGXIANGHUNHEA"],["001842","JTRTJHBA","九泰日添金货币A","货币型","JIUTAIRITIANJINHUOBIA"],["001843","JTRTJHBB","九泰日添金货币B","货币型","JIUTAIRITIANJINHUOBIB"],["001844","JTJYHHC","九泰久益混合C","混合型","JIUTAIJIUYIHUNHEC"],["001845","GSABWDHBHHA","国寿安保稳定回报混合A","混合型","GUOSHOUANBAOWENDINGHUIBAOHUNHEA"],["001846","GSABWJHBHHA","国寿安保稳健回报混合A","混合型","GUOSHOUANBAOWENJIANHUIBAOHUNHEA"],["001847","GSABZYYNZQA","国寿安保尊盈一年债券A","定开债券","GUOSHOUANBAOZUNYINGYINIANZHAIQUANA"],["001848","GSABZYYNZQC","国寿安保尊盈一年债券C","定开债券","GUOSHOUANBAOZUNYINGYINIANZHAIQUANC"],["001849","QHKYQSGS100QGP","前海开源强势共识100强股票","股票型","QIANHAIKAIYUANQIANGSHIGONGSHI100QIANGGUPIAO"],["001850","GTAYLHPZHHA","国泰安益灵活配置混合A","混合型","GUOTAIANYILINGHUOPEIZHIHUNHEA"],["001851","ZRQGZZHH","中融强国制造混合","混合型","ZHONGRONGQIANGGUOZHIZAOHUNHE"],["001852","RTZGF1HLHPZHH","融通中国风1号灵活配置混合","混合型","RONGTONGZHONGGUOFENG1HAOLINGHUOPEIZHIHUNHE"],["001853","RTZGF1HLHPZHH","融通中国风1号灵活配置混合(后端)","混合型","RONGTONGZHONGGUOFENG1HAOLINGHUOPEIZHIHUNHE"],["001854","JSCCJYZLZQA","景顺长城景颐增利债券A","债券型","JINGSHUNCHANGCHENGJINGYIZENGLIZHAIQUANA"],["001855","JSCCJYZLZQC","景顺长城景颐增利债券C","债券型","JINGSHUNCHANGCHENGJINGYIZENGLIZHAIQUANC"],["001858","JXAXBBEHHH","建信安心保本二号混合","保本型","JIANXINANXINBAOBENERHAOHUNHE"],["001859","DMZZ18GYKFZQA","大摩增值18个月开放债券A","定开债券","DAMOZENGZHI18GEYUEKAIFANGZHAIQUANA"],["001860","DMZZ18GYKFZQC","大摩增值18个月开放债券C","定开债券","DAMOZENGZHI18GEYUEKAIFANGZHAIQUANC"],["001861","FADJKRSHH","富安达健康人生混合","混合型","FUANDAJIANKANGRENSHENGHUNHE"],["001862","DFHSYZQZQA","东方红收益增强债券A","债券型","DONGFANGHONGSHOUYIZENGQIANGZHAIQUANA"],["001863","DFHSYZQZQC","东方红收益增强债券C","债券型","DONGFANGHONGSHOUYIZENGQIANGZHAIQUANC"],["001864","ZHMLCSJHH","中海魅力长三角混合","混合型","ZHONGHAIMEILICHANGSANJIAOHUNHE"],["001865","QHKYSJQDHHC","前海开源事件驱动混合C","混合型","QIANHAIKAIYUANSHIJIANQUDONGHUNHEC"],["001866","BXRFXCZ","北信瑞丰新成长","混合型","BEIXINRUIFENGXINCHENGZHANG"],["001867","NAJXBHBD","诺安聚鑫宝货币D","货币型","NUOANJUXINBAOHUOBID"],["001868","ZSCYZQC","招商产业债券C","债券型","ZHAOSHANGCHANYEZHAIQUANC"],["001869","ZSZZYHH","招商制造业混合","混合型","ZHAOSHANGZHIZAOYEHUNHE"],["001870","QHKYHBA","前海开源货币A","货币型","QIANHAIKAIYUANHUOBIA"],["001871","QHKYHBB","前海开源货币B","货币型","QIANHAIKAIYUANHUOBIB"],["001872","JSFYXYDQZQC","嘉实丰益信用定期债券C","定开债券","JIASHIFENGYIXINYONGDINGQIZHAIQUANC"],["001873","JSZQSYDQZQC","嘉实增强收益定期债券C","定开债券","JIASHIZENGQIANGSHOUYIDINGQIZHAIQUANC"],["001874","QHKYHGSJZJXHH","前海开源沪港深价值精选混合","混合型","QIANHAIKAIYUANHUGANGSHENJIAZHIJINGXUANHUNHE"],["001875","QHKYHGSYSJXHH","前海开源沪港深优势精选混合","混合型","QIANHAIKAIYUANHUGANGSHENYOUSHIJINGXUANHUNHE"],["001876","PHQQGSYZMYXH","鹏华全球高收益债美元现汇","QDII","PENGHUAQUANQIUGAOSHOUYIZHAIMEIYUANXIANHUI"],["001877","BYGJAQHGSGP","宝盈国家安全沪港深股票","股票型","BAOYINGGUOJIAANQUANHUGANGSHENGUPIAO"],["001878","JSHGSJXGP","嘉实沪港深精选股票","股票型","JIASHIHUGANGSHENJINGXUANGUPIAO"],["001880","CCZGZZLHPZHH","长城中国智造灵活配置混合","混合型","CHANGCHENGZHONGGUOZHIZAOLINGHUOPEIZHIHUNHE"],["001881","ZOXQSHHLOFE","中欧新趋势混合(LOF)E","混合型","ZHONGOUXINQUSHIHUNHELOFE"],["001882","ZOJZFXHHE","中欧价值发现混合E","混合型","ZHONGOUJIAZHIFAXIANHUNHEE"],["001883","ZOXDLHHLOFE","中欧新动力混合(LOF)E","混合型","ZHONGOUXINDONGLIHUNHELOFE"],["001884","ZOHS300ZSZQE","中欧沪深300指数增强E","股票指数","ZHONGOUHUSHEN300ZHISHUZENGQIANGE"],["001885","ZOXLCHHE","中欧新蓝筹混合E","混合型","ZHONGOUXINLANCHOUHUNHEE"],["001886","ZOHYCZHHLOFE","中欧行业成长混合(LOF)E","混合型","ZHONGOUHANGYECHENGZHANGHUNHELOFE"],["001887","ZOJZZXHHE","中欧价值智选混合E","混合型","ZHONGOUJIAZHIZHIXUANHUNHEE"],["001888","ZOSSCZHHLOFE","中欧盛世成长混合(LOF)E","混合型","ZHONGOUSHENGSHICHENGZHANGHUNHELOFE"],["001889","ZOZQHBZQLOFE","中欧增强回报债券(LOF)E","债券型","ZHONGOUZENGQIANGHUIBAOZHAIQUANLOFE"],["001890","ZOJXDQKFHHE","中欧精选定期开放混合E","混合型","ZHONGOUJINGXUANDINGQIKAIFANGHUNHEE"],["001891","ZOCZYXHHE","中欧成长优选混合E","混合型","ZHONGOUCHENGZHANGYOUXUANHUNHEE"],["001892","CSXXCZHH","长盛新兴成长混合","混合型","CHANGSHENGXINXINGCHENGZHANGHUNHE"],["001893","HBXYXJTYB","华宝兴业现金添益B","货币型","HUABAOXINGYEXIANJINTIANYIB"],["001894","TDHLHQYHBA","泰达宏利活期友货币A","货币型","TAIDAHONGLIHUOQIYOUHUOBIA"],["001895","TDHLHQYHBB","泰达宏利活期友货币B","货币型","TAIDAHONGLIHUOQIYOUHUOBIB"],["001896","TDHLJDHH","泰达宏利绝对混合","混合型","TAIDAHONGLIJUEDUIHUNHE"],["001897","JTJSLHXFHH","九泰久盛量化先锋混合","混合型","JIUTAIJIUSHENGLIANGHUAXIANFENGHUNHE"],["001899","DHSHAQ","东海社会安全","股票指数","DONGHAISHEHUIANQUAN"],["001901","QHKYHGSLXHHA","前海开源沪港深隆鑫混合A","混合型","QIANHAIKAIYUANHUGANGSHENLONGXINHUNHEA"],["001902","QHKYHGSLXHHC","前海开源沪港深隆鑫混合C","混合型","QIANHAIKAIYUANHUGANGSHENLONGXINHUNHEC"],["001903","GDXXHHA","光大欣鑫混合A","混合型","GUANGDAXINXINHUNHEA"],["001904","GDXXHHC","光大欣鑫混合C","混合型","GUANGDAXINXINHUNHEC"],["001905","HAAYBBHH","华安安益保本混合","保本型","HUAANANYIBAOBENHUNHE"],["001906","DFHCZZQ","东方红纯债债券","债券型","DONGFANGHONGCHUNZHAIZHAIQUAN"],["001907","GTRYJXBBHHA","国投瑞银境煊保本混合A","保本型","GUOTOURUIYINJINGXUANBAOBENHUNHEA"],["001908","GTRYJXBBHHC","国投瑞银境煊保本混合C","保本型","GUOTOURUIYINJINGXUANBAOBENHUNHEC"],["001909","CJHXHB","创金合信货币","货币型","CHUANGJINHEXINHUOBI"],["001910","TKXJYHH","泰康新机遇混合","混合型","TAIKANGXINJIYUHUNHE"],["001911","BSYHCZZQ","博时裕恒纯债债券","债券型","BOSHIYUHENGCHUNZHAIZHAIQUAN"],["001912","ZOQSDCLZQ","中欧强势多策略债券","定开债券","ZHONGOUQIANGSHIDUOCELUEZHAIQUAN"],["001914","ZXJTWLBB2H","中信建投稳利保本2号","保本型","ZHONGXINJIANTOUWENLIBAOBEN2HAO"],["001915","BYYLJKHGSGP","宝盈医疗健康沪港深股票","股票型","BAOYINGYILIAOJIANKANGHUGANGSHENGUPIAO"],["001916","XWTBA","新沃通宝A","货币型","XINWOTONGBAOA"],["001917","ZSLHJXGP","招商量化精选股票","股票型","ZHAOSHANGLIANGHUAJINGXUANGUPIAO"],["001918","YXYFXLA","圆信永丰兴利A","债券型","YUANXINYONGFENGXINGLIA"],["001919","YXYFXLC","圆信永丰兴利C","债券型","YUANXINYONGFENGXINGLIC"],["001920","JSCCJYHLZQA","景顺长城景颐宏利债券A","债券型","JINGSHUNCHANGCHENGJINGYIHONGLIZHAIQUANA"],["001921","JSCCJYHLZQC","景顺长城景颐宏利债券C","债券型","JINGSHUNCHANGCHENGJINGYIHONGLIZHAIQUANC"],["001922","GTXMBSYBBHH","国泰新目标收益保本混合","保本型","GUOTAIXINMUBIAOSHOUYIBAOBENHUNHE"],["001923","GTTYLHPZHH","国泰添益灵活配置混合","混合型","GUOTAITIANYILINGHUOPEIZHIHUNHE"],["001924","HXGQGGHH","华夏国企改革混合","混合型","HUAXIAGUOQIGAIGEHUNHE"],["001925","XYXTYHBA","兴业鑫天盈货币A","货币型","XINGYEXINTIANYINGHUOBIA"],["001926","XYXTYHBB","兴业鑫天盈货币B","货币型","XINGYEXINTIANYINGHUOBIB"],["001927","HXXFSJLHPZHHA","华夏消费升级灵活配置混合A","混合型","HUAXIAXIAOFEISHENGJILINGHUOPEIZHIHUNHEA"],["001928","HXXFSJLHPZHHC","华夏消费升级灵活配置混合C","混合型","HUAXIAXIAOFEISHENGJILINGHUOPEIZHIHUNHEC"],["001929","HXSYBHBA","华夏收益宝货币A","货币型","HUAXIASHOUYIBAOHUOBIA"],["001930","HXSYBHBB","华夏收益宝货币B","货币型","HUAXIASHOUYIBAOHUOBIB"],["001931","GSABXQBHB","国寿安保鑫钱包货币","货币型","GUOSHOUANBAOXINQIANBAOHUOBI"],["001932","GSABBBHH","国寿安保保本混合","保本型","GUOSHOUANBAOBAOBENHUNHE"],["001933","HSXXHLHH","华商新兴活力混合","混合型","HUASHANGXINXINGHUOLIHUNHE"],["001934","GTQQJDSYMYXC","国泰全球绝对收益美元现钞","QDII","GUOTAIQUANQIUJUEDUISHOUYIMEIYUANXIANCHAO"],["001935","GTQQJDSYMYXH","国泰全球绝对收益美元现汇","QDII","GUOTAIQUANQIUJUEDUISHOUYIMEIYUANXIANHUI"],["001936","GTQQJDSYRMB","国泰全球绝对收益人民币","QDII","GUOTAIQUANQIUJUEDUISHOUYIRENMINBI"],["001937","HFXJZLHB","华福现金增利货币","货币型","HUAFUXIANJINZENGLIHUOBI"],["001938","ZOSDXFGPA","中欧时代先锋股票A","股票型","ZHONGOUSHIDAIXIANFENGGUPIAOA"],["001939","GDRXHHA","光大睿鑫混合A","混合型","GUANGDARUIXINHUNHEA"],["001940","NYXDNYJ","农银现代农业加","混合型","NONGYINXIANDAINONGYEJIA"],["001941","RTTYDRZQB","融通通源短融债券B","债券型","RONGTONGTONGYUANDUANRONGZHAIQUANB"],["001942","QHKYHGSHXHHA","前海开源沪港深汇鑫混合A","混合型","QIANHAIKAIYUANHUGANGSHENHUIXINHUNHEA"],["001943","QHKYHGSHXHHC","前海开源沪港深汇鑫混合C","混合型","QIANHAIKAIYUANHUGANGSHENHUIXINHUNHEC"],["001945","DFHXYZZQA","东方红信用债债券A","债券型","DONGFANGHONGXINYONGZHAIZHAIQUANA"],["001946","DFHXYZZQC","东方红信用债债券C","债券型","DONGFANGHONGXINYONGZHAIZHAIQUANC"],["001947","STMGAXHBA","上投摩根安鑫回报A","混合型","SHANGTOUMOGENANXINHUIBAOA"],["001948","JXWDFLZQA","建信稳定丰利债券A","债券型","JIANXINWENDINGFENGLIZHAIQUANA"],["001949","JXWDFLZQC","建信稳定丰利债券C","债券型","JIANXINWENDINGFENGLIZHAIQUANC"],["001950","PHFTDKZB","鹏华丰泰定开债B","定开债券","PENGHUAFENGTAIDINGKAIZHAIB"],["001951","JYGGHLHH","金鹰改革红利混合","混合型","JINYINGGAIGEHONGLIHUNHE"],["001952","GDZSYNDKZA","光大尊尚一年定开债A","定开债券","GUANGDAZUNSHANGYINIANDINGKAIZHAIA"],["001953","GDZSYNDKZC","光大尊尚一年定开债C","定开债券","GUANGDAZUNSHANGYINIANDINGKAIZHAIC"],["001954","YHSTHBZTLHPZHH","银华生态环保主题灵活配置混合","混合型","YINHUASHENGTAIHUANBAOZHUTILINGHUOPEIZHIHUNHE"],["001955","ZOYLCYHH","中欧养老产业混合","混合型","ZHONGOUYANGLAOCHANYEHUNHE"],["001956","GLAKJDL","国联安科技动力","股票型","GUOLIANANKEJIDONGLI"],["001959","HSLXHLLHPZHH","华商乐享互联灵活配置混合","混合型","HUASHANGLEXIANGHULIANLINGHUOPEIZHIHUNHE"],["001960","HFRY","华福瑞益","债券型","HUAFURUIYI"],["001961","BSYRCZZQ","博时裕荣纯债债券","债券型","BOSHIYURONGCHUNZHAIZHAIQUAN"],["001963","ZOTXZQ","中欧天禧债券","债券型","ZHONGOUTIANXIZHAIQUAN"],["001964","NATXYNDKZC","诺安泰鑫一年定开债C","定开债券","NUOANTAIXINYINIANDINGKAIZHAIC"],["001967","HBZXSJHH","华宝转型升级混合","混合型","HUABAOZHUANXINGSHENGJIHUNHE"],["001968","GDZYBNDKZA","光大尊盈半年定开债A","定开债券","GUANGDAZUNYINGBANNIANDINGKAIZHAIA"],["001969","GDZYBNDKZC","光大尊盈半年定开债C","定开债券","GUANGDAZUNYINGBANNIANDINGKAIZHAIC"],["001970","TXXXLHPZHHA","泰信鑫选灵活配置混合A","混合型","TAIXINXINXUANLINGHUOPEIZHIHUNHEA"],["001971","BSCYZCZZQC","博时产业债纯债债券C","债券型","BOSHICHANYEZHAICHUNZHAIZHAIQUANC"],["001972","QHKYHGSZHSHHH","前海开源沪港深智慧生活混合","混合型","QIANHAIKAIYUANHUGANGSHENZHIHUISHENGHUOHUNHE"],["001973","GDYQBHBA","光大耀钱包货币A","货币型","GUANGDAYAOQIANBAOHUOBIA"],["001974","JSCCLHXDLGP","景顺长城量化新动力股票","股票型","JINGSHUNCHANGCHENGLIANGHUAXINDONGLIGUPIAO"],["001975","JSCCHBYSGP","景顺长城环保优势股票","股票型","JINGSHUNCHANGCHENGHUANBAOYOUSHIGUPIAO"],["001976","HFTYNDKZC","海富通一年定开债C","定开债券","HAIFUTONGYINIANDINGKAIZHAIC"],["001977","CJHXJCBBHH","创金合信聚财保本混合","保本型","CHUANGJINHEXINJUCAIBAOBENHUNHE"],["001978","TXHLWHH","泰信互联网+混合","混合型","TAIXINHULIANWANGHUNHE"],["001979","NFHGSJZ","南方沪港深价值","混合型","NANFANGHUGANGSHENJIAZHI"],["001981","FGSYBJYXHBA","富国收益宝交易型货币A","货币型","FUGUOSHOUYIBAOJIAOYIXINGHUOBIA"],["001982","FGSYBJYXHBB","富国收益宝交易型货币B","货币型","FUGUOSHOUYIBAOJIAOYIXINGHUOBIB"],["001983","ZYDTPZHH","中邮低碳配置混合","混合型","ZHONGYOUDITANPEIZHIHUNHE"],["001984","STMGZHSHHH","上投摩根智慧生活混合","混合型","SHANGTOUMOGENZHIHUISHENGHUOHUNHE"],["001985","FGDTXJJHH","富国低碳新经济混合","混合型","FUGUODITANXINJINGJIHUNHE"],["001986","QHKYRGZNZTHH","前海开源人工智能主题混合","混合型","QIANHAIKAIYUANRENGONGZHINENGZHUTIHUNHE"],["001987","DFJYBHB","东方金元宝货币","货币型","DONGFANGJINYUANBAOHUOBI"],["001990","ZOSJWJHHA","中欧数据挖掘混合A","混合型","ZHONGOUSHUJUWAJUEHUNHEA"],["001991","NYTTLHBA","农银天天利货币A","货币型","NONGYINTIANTIANLIHUOBIA"],["001992","NYTTLHBB","农银天天利货币B","货币型","NONGYINTIANTIANLIHUOBIB"],["001993","BSYTCZZQ","博时裕泰纯债债券","债券型","BOSHIYUTAICHUNZHAIZHAIQUAN"],["001994","HANNHZQC","华安年年红债券C","定开债券","HUAANNIANNIANHONGZHAIQUANC"],["001997","GYXQSLHPZHHC","工银新趋势灵活配置混合C","混合型","GONGYINXINQUSHILINGHUOPEIZHIHUNHEC"],["001998","GYXJDHHC","工银新焦点混合C","混合型","GONGYINXINJIAODIANHUNHEC"],["001999","BSAR18GYDKZ","博时安荣18个月定开债","定开债券","BOSHIANRONG18GEYUEDINGKAIZHAI"],["002000","GYXSLHH","工银新生利混合","混合型","GONGYINXINSHENGLIHUNHE"],["002001","HXHBHHA","华夏回报混合A","混合型","HUAXIAHUIBAOHUNHEA"],["002002","HXHBHHA","华夏回报混合A(后端)","混合型","HUAXIAHUIBAOHUNHEA"],["002003","GYXJYLHPZHHA","工银新机遇灵活配置混合A","混合型","GONGYINXINJIYULINGHUOPEIZHIHUNHEA"],["002004","GYXJYLHPZHHC","工银新机遇灵活配置混合C","混合型","GONGYINXINJIYULINGHUOPEIZHIHUNHEC"],["002005","GYXDLHH","工银新得利混合","混合型","GONGYINXINDELIHUNHE"],["002006","GYXDYHH","工银新得益混合","混合型","GONGYINXINDEYIHUNHE"],["002007","GYXDRHH","工银新得润混合","混合型","GONGYINXINDERUNHUNHE"],["002008","BSYSCZZQ","博时裕晟纯债债券","债券型","BOSHIYUSHENGCHUNZHAIZHAIQUAN"],["002009","ZOJTLHPZHHA","中欧瑾通灵活配置混合A","混合型","ZHONGOUJINTONGLINGHUOPEIZHIHUNHEA"],["002010","ZOJTLHPZHHC","中欧瑾通灵活配置混合C","混合型","ZHONGOUJINTONGLINGHUOPEIZHIHUNHEC"],["002011","HXHL","华夏红利","混合型","HUAXIAHONGLI"],["002012","HXHL","华夏红利(后端)","混合型","HUAXIAHONGLI"],["002013","ZOQFLHPZHHA","中欧琪丰灵活配置混合A","混合型","ZHONGOUQIFENGLINGHUOPEIZHIHUNHEA"],["002014","ZOQFLHPZHHC","中欧琪丰灵活配置混合C","混合型","ZHONGOUQIFENGLINGHUOPEIZHIHUNHEC"],["002015","NFRGA","南方荣光A","混合型","NANFANGRONGGUANGA"],["002016","NFRGC","南方荣光C","混合型","NANFANGRONGGUANGC"],["002017","ZSRFLHPZHHFQSC","招商瑞丰灵活配置混合发起式C","混合型","ZHAOSHANGRUIFENGLINGHUOPEIZHIHUNHEFAQISHIC"],["002018","PHHAHHA","鹏华弘安混合A","混合型","PENGHUAHONGANHUNHEA"],["002019","PHHAHHC","鹏华弘安混合C","混合型","PENGHUAHONGANHUNHEC"],["002020","GDCXQD","国都创新驱动","混合型","GUODUCHUANGXINQUDONG"],["002021","HXHBEHHH","华夏回报二号混合","混合型","HUAXIAHUIBAOERHAOHUNHE"],["002023","HTHTWJHBA","红塔红土稳健回报A","混合型","HONGTAHONGTUWENJIANHUIBAOA"],["002024","HTHTWJHBC","红塔红土稳健回报C","混合型","HONGTAHONGTUWENJIANHUIBAOC"],["002025","GFJSHHA","广发聚盛混合A","混合型","GUANGFAJUSHENGHUNHEA"],["002026","GFJSHHC","广发聚盛混合C","混合型","GUANGFAJUSHENGHUNHEC"],["002027","ZJXXHHA","中加心享混合A","混合型","ZHONGJIAXINXIANGHUNHEA"],["002028","JTTBLHPZHHC","九泰天宝灵活配置混合C","混合型","JIUTAITIANBAOLINGHUOPEIZHIHUNHEC"],["002029","AXDTCLHHC","安信动态策略混合C","混合型","ANXINDONGTAICELUEHUNHEC"],["002030","XCXXHHB","信诚新选混合B","混合型","XINCHENGXINXUANHUNHEB"],["002031","HXCLJX","华夏策略精选","混合型","HUAXIACELUEJINGXUAN"],["002033","HAXCFLHPZHHA","华安新财富灵活配置混合A","混合型","HUAANXINCAIFULINGHUOPEIZHIHUNHEA"],["002034","HAXCFLHPZHHC","华安新财富灵活配置混合C","混合型","HUAANXINCAIFULINGHUOPEIZHIHUNHEC"],["002035","AXPWZZHHFQC","安信平稳增长混合发起C","混合型","ANXINPINGWENZENGZHANGHUNHEFAQIC"],["002036","AXYSZZHHC","安信优势增长混合C","混合型","ANXINYOUSHIZENGZHANGHUNHEC"],["002037","HAXXWLHPZHHA","华安新希望灵活配置混合A","混合型","HUAANXINXIWANGLINGHUOPEIZHIHUNHEA"],["002038","HAXXWLHPZHHC","华安新希望灵活配置混合C","混合型","HUAANXINXIWANGLINGHUOPEIZHIHUNHEC"],["002039","GTRYXSYHHA","国投瑞银新收益混合A","混合型","GUOTOURUIYINXINSHOUYIHUNHEA"],["002040","GTRYXSYHHC","国投瑞银新收益混合C","混合型","GUOTOURUIYINXINSHOUYIHUNHEC"],["002041","GTRYXCZHHA","国投瑞银新成长混合A","混合型","GUOTOURUIYINXINCHENGZHANGHUNHEA"],["002042","GTRYXCZHHC","国投瑞银新成长混合C","混合型","GUOTOURUIYINXINCHENGZHANGHUNHEC"],["002043","TZYJQDHHC","天治研究驱动混合C","混合型","TIANZHIYANJIUQUDONGHUNHEC"],["002045","GTSYLHPZHHC","国泰生益灵活配置混合C","混合型","GUOTAISHENGYILINGHUOPEIZHIHUNHEC"],["002046","XCXRHHB","信诚新锐混合B","混合型","XINCHENGXINRUIHUNHEB"],["002047","XCXXHHB","信诚新鑫混合B","混合型","XINCHENGXINXINHUNHEB"],["002048","BSAY18GYDKZ","博时安誉18个月定开债","定开债券","BOSHIANYU18GEYUEDINGKAIZHAI"],["002049","RTXJYLHPZHH","融通新机遇灵活配置混合","混合型","RONGTONGXINJIYULINGHUOPEIZHIHUNHE"],["002050","RTXJYLHPZHH","融通新机遇灵活配置混合(后端)","混合型","RONGTONGXINJIYULINGHUOPEIZHIHUNHE"],["002051","NACXQDHHC","诺安创新驱动混合C","混合型","NUOANCHUANGXINQUDONGHUNHEC"],["002052","NAWJHBLHPZHHC","诺安稳健回报灵活配置混合C","混合型","NUOANWENJIANHUIBAOLINGHUOPEIZHIHUNHEC"],["002053","NAYSHYHHC","诺安优势行业混合C","混合型","NUOANYOUSHIHANGYEHUNHEC"],["002054","ZYXCFHHA","中银新财富混合A","混合型","ZHONGYINXINCAIFUHUNHEA"],["002055","GTXYLHPZHHC","国泰兴益灵活配置混合C","混合型","GUOTAIXINGYILINGHUOPEIZHIHUNHEC"],["002056","ZYXCFHHC","中银新财富混合C","混合型","ZHONGYINXINCAIFUHUNHEC"],["002057","ZYXJYHHA","中银新机遇混合A","混合型","ZHONGYINXINJIYUHUNHEA"],["002058","ZYXJYHHC","中银新机遇混合C","混合型","ZHONGYINXINJIYUHUNHEC"],["002059","GTNYLHPZHHC","国泰浓益灵活配置混合C","混合型","GUOTAINONGYILINGHUOPEIZHIHUNHEC"],["002060","DFXCLLHPZHHC","东方新策略灵活配置混合C","混合型","DONGFANGXINCELUELINGHUOPEIZHIHUNHEC"],["002061","GTAKYLDQZFHHC","国泰安康养老定期支付混合C","混合型","GUOTAIANKANGYANGLAODINGQIZHIFUHUNHEC"],["002062","GTGCQDLHPZHHC","国泰国策驱动灵活配置混合C","混合型","GUOTAIGUOCEQUDONGLINGHUOPEIZHIHUNHEC"],["002063","GTJGZXLHPZHHC","国泰结构转型灵活配置混合C","混合型","GUOTAIJIEGOUZHUANXINGLINGHUOPEIZHIHUNHEC"],["002064","HFCYSJLHPZHH","华富产业升级灵活配置混合","混合型","HUAFUCHANYESHENGJILINGHUOPEIZHIHUNHE"],["002065","JSCCJSSXSYZQA","景顺长城景盛双息收益债券A","债券型","JINGSHUNCHANGCHENGJINGSHENGSHUANGXISHOUYIZHAIQUANA"],["002066","JSCCJSSXSYZQC","景顺长城景盛双息收益债券C","债券型","JINGSHUNCHANGCHENGJINGSHENGSHUANGXISHOUYIZHAIQUANC"],["002067","NAJXHBHH","诺安精选回报混合","混合型","NUOANJINGXUANHUIBAOHUNHE"],["002068","DFDCLLHPZHHC","东方多策略灵活配置混合C","混合型","DONGFANGDUOCELUELINGHUOPEIZHIHUNHEC"],["002069","HTBRSLHHA","华泰柏瑞盛利混合A","混合型","HUATAIBAIRUISHENGLIHUNHEA"],["002070","HTBRSLHHC","华泰柏瑞盛利混合C","混合型","HUATAIBAIRUISHENGLIHUNHEC"],["002071","CACYJXHHC","长安产业精选混合C","混合型","CHANGANCHANYEJINGXUANHUNHEC"],["002072","CAXLYXHHC","长安鑫利优选混合C","混合型","CHANGANXINLIYOUXUANHUNHEC"],["002073","YXYFXRA","圆信永丰兴融A","债券型","YUANXINYONGFENGXINGRONGA"],["002074","YXYFXRC","圆信永丰兴融C","债券型","YUANXINYONGFENGXINGRONGC"],["002075","GDRXHHC","光大睿鑫混合C","混合型","GUANGDARUIXINHUNHEC"],["002076","ZSJCLHPZ","浙商聚潮灵活配置","混合型","ZHESHANGJUCHAOLINGHUOPEIZHI"],["002077","ZSRTLA","浙商日添利A","货币型","ZHESHANGRITIANLIA"],["002078","ZSRTLB","浙商日添利B","货币型","ZHESHANGRITIANLIB"],["002079","QHKYZGXQZCHHC","前海开源中国稀缺资产混合C","混合型","QIANHAIKAIYUANZHONGGUOXIQUEZICHANHUNHEC"],["002080","QHKYYDYLHHC","前海开源一带一路混合C","混合型","QIANHAIKAIYUANYIDAIYILUHUNHEC"],["002081","DCJPLHPZHHA","大成景沛灵活配置混合A","混合型","DACHENGJINGPEILINGHUOPEIZHIHUNHEA"],["002082","HTBRJLDLHHC","华泰柏瑞激励动力混合C","混合型","HUATAIBAIRUIJILIDONGLIHUNHEC"],["002083","XHXDLLHPZHHA","新华鑫动力灵活配置混合A","混合型","XINHUAXINDONGLILINGHUOPEIZHIHUNHEA"],["002084","XHXDLLHPZHHC","新华鑫动力灵活配置混合C","混合型","XINHUAXINDONGLILINGHUOPEIZHIHUNHEC"],["002085","CSHLWHH","长盛互联网+混合","混合型","CHANGSHENGHULIANWANGHUNHE"],["002086","DCJADRZQE","大成景安短融债券E","债券型","DACHENGJINGANDUANRONGZHAIQUANE"],["002087","GFXJYHHA","国富新机遇混合A","混合型","GUOFUXINJIYUHUNHEA"],["002088","GFXJYHHC","国富新机遇混合C","混合型","GUOFUXINJIYUHUNHEC"],["002089","CSSXHHA","长盛盛鑫混合A","混合型","CHANGSHENGSHENGXINHUNHEA"],["002090","CSSXHHC","长盛盛鑫混合C","混合型","CHANGSHENGSHENGXINHUNHEC"],["002091","HTBRXLHHC","华泰柏瑞新利混合C","混合型","HUATAIBAIRUIXINLIHUNHEC"],["002092","GFXZZHHA","国富新增长混合A","混合型","GUOFUXINZENGZHANGHUNHEA"],["002093","GFXZZHHC","国富新增长混合C","混合型","GUOFUXINZENGZHANGHUNHEC"],["002094","HTBRZZ2025HHC","华泰柏瑞制造2025混合C","混合型","HUATAIBAIRUIZHIZAO2025HUNHEC"],["002095","BSXSYA","博时新收益A","混合型","BOSHIXINSHOUYIA"],["002096","BSXSYC","博时新收益C","混合型","BOSHIXINSHOUYIC"],["002097","GFXJZHHA","国富新价值混合A","混合型","GUOFUXINJIAZHIHUNHEA"],["002098","GFXJZHHC","国富新价值混合C","混合型","GUOFUXINJIAZHIHUNHEC"],["002099","GFXHLHHA","国富新活力混合A","混合型","GUOFUXINHUOLIHUNHEA"],["002100","GFXHLHHC","国富新活力混合C","混合型","GUOFUXINHUOLIHUNHEC"],["002101","CJHXXYXHHA","创金合信鑫优选混合A","混合型","CHUANGJINHEXINXINYOUXUANHUNHEA"],["002102","CJHXXYXHHC","创金合信鑫优选混合C","混合型","CHUANGJINHEXINXINYOUXUANHUNHEC"],["002103","ZSKTYLHH","招商康泰养老混合","混合型","ZHAOSHANGKANGTAIYANGLAOHUNHE"],["002104","BSXJZA","博时新价值A","混合型","BOSHIXINJIAZHIA"],["002105","BSXJZC","博时新价值C","混合型","BOSHIXINJIAZHIC"],["002106","DBFXLHPZHHC","德邦福鑫灵活配置混合C","混合型","DEBANGFUXINLINGHUOPEIZHIHUNHEC"],["002107","GFAFHBHHA","广发安富回报混合A","混合型","GUANGFAANFUHUIBAOHUNHEA"],["002108","GFAFHBHHC","广发安富回报混合C","混合型","GUANGFAANFUHUIBAOHUNHEC"],["002109","BSYFCZZQ","博时裕丰纯债债券","债券型","BOSHIYUFENGCHUNZHAIZHAIQUAN"],["002110","ZHZXLHPZHH","中海中鑫灵活配置混合","混合型","ZHONGHAIZHONGXINLINGHUOPEIZHIHUNHE"],["002111","HBXYXQDHH","华宝兴业新起点混合","混合型","HUABAOXINGYEXINQIDIANHUNHE"],["002112","DBXXJZLHPZHHC","德邦鑫星价值灵活配置混合C","混合型","DEBANGXINXINGJIAZHILINGHUOPEIZHIHUNHEC"],["002113","DBCZZQC","德邦纯债债券C","债券型","DEBANGCHUNZHAIZHAIQUANC"],["002114","GFXSYHHA","国富新收益混合A","混合型","GUOFUXINSHOUYIHUNHEA"],["002115","GFXSYHHC","国富新收益混合C","混合型","GUOFUXINSHOUYIHUNHEC"],["002116","GFAXHHA","广发安享混合A","混合型","GUANGFAANXIANGHUNHEA"],["002117","GFAXHHC","广发安享混合C","混合型","GUANGFAANXIANGHUNHEC"],["002118","GFAYHHA","广发安盈混合A","混合型","GUANGFAANYINGHUNHEA"],["002119","GFAYHHC","广发安盈混合C","混合型","GUANGFAANYINGHUNHEC"],["002120","GFAYHH","广发安悦混合","混合型","GUANGFAANYUEHUNHE"],["002121","GFHGSXQDGP","广发沪港深新起点股票","股票型","GUANGFAHUGANGSHENXINQIDIANGUPIAO"],["002122","GFXCTHH","广发新常态混合","混合型","GUANGFAXINCHANGTAIHUNHE"],["002123","BXRFWYZZ","北信瑞丰外延增长","混合型","BEIXINRUIFENGWAIYANZENGZHANG"],["002124","GFXXCYHH","广发新兴产业混合","混合型","GUANGFAXINXINGCHANYEHUNHE"],["002126","GFXFHHA","广发鑫富混合A","混合型","GUANGFAXINFUHUNHEA"],["002127","GFXFHHC","广发鑫富混合C","混合型","GUANGFAXINFUHUNHEC"],["002128","GFXHHH","广发鑫惠混合","混合型","GUANGFAXINHUIHUNHE"],["002129","GFXLHH","广发鑫利混合","混合型","GUANGFAXINLIHUNHE"],["002130","GFXLHHA","广发鑫隆混合A","混合型","GUANGFAXINLONGHUNHEA"],["002131","GFXLHHC","广发鑫隆混合C","混合型","GUANGFAXINLONGHUNHEC"],["002132","GFXXHH","广发鑫享混合","混合型","GUANGFAXINXIANGHUNHE"],["002133","GFXYHH","广发鑫益混合","混合型","GUANGFAXINYIHUNHE"],["002134","GFXYHH","广发鑫裕混合","混合型","GUANGFAXINYUHUNHE"],["002135","GFXYHHA","广发鑫源混合A","混合型","GUANGFAXINYUANHUNHEA"],["002136","GFXYHHC","广发鑫源混合C","混合型","GUANGFAXINYUANHUNHEC"],["002137","NALXBBHH","诺安利鑫保本混合","保本型","NUOANLIXINBAOBENHUNHE"],["002138","HDYTZQA","泓德裕泰债券A","债券型","HONGDEYUTAIZHAIQUANA"],["002139","HDYTZQC","泓德裕泰债券C","债券型","HONGDEYUTAIZHAIQUANC"],["002140","BSYCCZZQ","博时裕诚纯债债券","债券型","BOSHIYUCHENGCHUNZHAIZHAIQUAN"],["002141","JXXFHBLHPZHHC","建信鑫丰回报灵活配置混合C","混合型","JIANXINXINFENGHUIBAOLINGHUOPEIZHIHUNHEC"],["002142","BSWYZZZTLHPZHH","博时外延增长主题灵活配置混合","混合型","BOSHIWAIYANZENGZHANGZHUTILINGHUOPEIZHIHUNHE"],["002143","BSYKCZ","博时裕坤纯债","债券型","BOSHIYUKUNCHUNZHAI"],["002144","HAXYXLHPZHHC","华安新优选灵活配置混合C","混合型","HUAANXINYOUXUANLINGHUOPEIZHIHUNHEC"],["002145","NAJXBBHH","诺安景鑫保本混合","保本型","NUOANJINGXINBAOBENHUNHE"],["002146","CAXYZQHHA","长安鑫益增强混合A","混合型","CHANGANXINYIZENGQIANGHUNHEA"],["002147","CAXYZQHHC","长安鑫益增强混合C","混合型","CHANGANXINYIZENGQIANGHUNHEC"],["002148","GSABWJZLHH","国寿安保稳健增利混合","混合型","GUOSHOUANBAOWENJIANZENGLIHUNHE"],["002149","JSXYXHH","嘉实新优选混合","混合型","JIASHIXINYOUXUANHUNHE"],["002150","BSYHCZ","博时裕和纯债","债券型","BOSHIYUHECHUNZHAI"],["002152","HBHXYSHH","华宝核心优势混合","混合型","HUABAOHEXINYOUSHIHUNHE"],["002153","HAARLHPZHHA","华安安润灵活配置混合A","混合型","HUAANANRUNLINGHUOPEIZHIHUNHEA"],["002154","HAARLHPZHHC","华安安润灵活配置混合C","混合型","HUAANANRUNLINGHUOPEIZHIHUNHEC"],["002156","CSSSHHA","长盛盛世混合A","混合型","CHANGSHENGSHENGSHIHUNHEA"],["002157","CSSSHHC","长盛盛世混合C","混合型","CHANGSHENGSHENGSHIHUNHEC"],["002158","HTFAXZXHHC","汇添富安鑫智选混合C","混合型","HUITIANFUANXINZHIXUANHUNHEC"],["002159","DWGQGG","东吴国企改革","混合型","DONGWUGUOQIGAIGE"],["002160","NFQDHH","南方驱动混合","混合型","NANFANGQUDONGHUNHE"],["002162","DFXJZHHC","东方新价值混合C","混合型","DONGFANGXINJIAZHIHUNHEC"],["002163","DFHXLHPZHHC","东方惠新灵活配置混合C","混合型","DONGFANGHUIXINLINGHUOPEIZHIHUNHEC"],["002164","HTFXRJXHHC","汇添富新睿精选混合C","混合型","HUITIANFUXINRUIJINGXUANHUNHEC"],["002165","HTFDXHHC","汇添富达欣混合C","混合型","HUITIANFUDAXINHUNHEC"],["002166","HXYFYLLCHHC","华夏永福养老理财混合C","混合型","HUAXIAYONGFUYANGLAOLICAIHUNHEC"],["002167","NFSK","南方顺康","保本型","NANFANGSHUNKANG"],["002168","JSZNQCGP","嘉实智能汽车股票","股票型","JIASHIZHINENGQICHEGUPIAO"],["002169","YYWYZQ","永赢稳益债券","债券型","YONGYINGWENYIZHAIQUAN"],["002170","DWYDHLC","东吴移动互联C","混合型","DONGWUYIDONGHULIANC"],["002172","HFTXNXHHC","海富通新内需混合C","混合型","HAIFUTONGXINNEIXUHUNHEC"],["002173","DFDJKHH","东方大健康混合","混合型","DONGFANGDAJIANKANGHUNHE"],["002174","DFHLWJHH","东方互联网嘉混合","混合型","DONGFANGHULIANWANGJIAHUNHE"],["002175","BSYQCZA","博时裕乾纯债A","债券型","BOSHIYUQIANCHUNZHAIA"],["002177","XCXZB","信诚新泽B","混合型","XINCHENGXINZEB"],["002178","JSXQDHHC","嘉实新起点混合C","混合型","JIASHIXINQIDIANHUNHEC"],["002179","HASJQDLHCLHH","华安事件驱动量化策略混合","混合型","HUAANSHIJIANQUDONGLIANGHUACELUEHUNHE"],["002182","DXLHCFHH","东兴蓝海财富混合","混合型","DONGXINGLANHAICAIFUHUNHE"],["002183","GFTTHHBB","广发天天红货币B","货币型","GUANGFATIANTIANHONGHUOBIB"],["002184","HDHLHBA","泓德泓利货币A","货币型","HONGDEHONGLIHUOBIA"],["002185","HDHLHBB","泓德泓利货币B","货币型","HONGDEHONGLIHUOBIB"],["002186","GLAXXLHPZHHC","国联安鑫享灵活配置混合C","混合型","GUOLIANANXINXIANGLINGHUOPEIZHIHUNHEC"],["002187","GLAXFHHC","国联安鑫富混合C","混合型","GUOLIANANXINFUHUNHEC"],["002188","PHFHZQ","鹏华丰华债券","债券型","PENGHUAFENGHUAZHAIQUAN"],["002189","NYHLGQGGHH","农银汇理国企改革混合","混合型","NONGYINHUILIGUOQIGAIGEHUNHE"],["002190","NYXNYZT","农银新能源主题","混合型","NONGYINXINNENGYUANZHUTI"],["002191","NYWLWHH","农银物联网混合","混合型","NONGYINWULIANWANGHUNHE"],["002192","DFDXLHPZHHC","东方鼎新灵活配置混合C","混合型","DONGFANGDINGXINLINGHUOPEIZHIHUNHEC"],["002193","DFLQHHC","东方利群混合C","混合型","DONGFANGLIQUNHUNHEC"],["002194","BXRFWDZQPZHH","北信瑞丰稳定增强偏债混合","混合型","BEIXINRUIFENGWENDINGZENGQIANGPIANZHAIHUNHE"],["002195","ZYJGXJGLHB","中银机构现金管理货币","货币型","ZHONGYINJIGOUXIANJINGUANLIHUOBI"],["002196","JYJSLXLHPZHHC","金鹰技术领先灵活配置混合C","混合型","JINYINGJISHULINGXIANLINGHUOPEIZHIHUNHEC"],["002197","GTXBBHH","国泰鑫保本混合","保本型","GUOTAIXINBAOBENHUNHE"],["002198","BSYDCZZQ","博时裕达纯债债券","债券型","BOSHIYUDACHUNZHAIZHAIQUAN"],["002199","QHKYZZJGZSC","前海开源中证军工指数C","股票指数","QIANHAIKAIYUANZHONGZHENGJUNGONGZHISHUC"],["002200","DCHCHBA","大成慧成货币A","货币型","DACHENGHUICHENGHUOBIA"],["002201","DCHCHBB","大成慧成货币B","货币型","DACHENGHUICHENGHUOBIB"],["002202","DCHCHBE","大成慧成货币E","货币型","DACHENGHUICHENGHUOBIE"],["002203","GTRXPHHH","国泰睿信平衡混合","混合型","GUOTAIRUIXINPINGHENGHUNHE"],["002206","BSYKCZZQ","博时裕康纯债债券","债券型","BOSHIYUKANGCHUNZHAIZHAIQUAN"],["002207","QHKYJYZBHHC","前海开源金银珠宝混合C","混合型","QIANHAIKAIYUANJINYINZHUBAOHUNHEC"],["002208","BSJYBBA","博时境源保本A","保本型","BOSHIJINGYUANBAOBENA"],["002209","BSJYBBC","博时境源保本C","保本型","BOSHIJINGYUANBAOBENC"],["002210","CJHXLHDYZGPA","创金合信量化多因子股票A","股票型","CHUANGJINHEXINLIANGHUADUOYINZIGUPIAOA"],["002211","JSXCFHH","嘉实新财富混合","混合型","JIASHIXINCAIFUHUNHE"],["002212","JSXQHHH","嘉实新起航混合","混合型","JIASHIXINQIHANGHUNHE"],["002213","ZHSXBBHH","中海顺鑫保本混合","保本型","ZHONGHAISHUNXINBAOBENHUNHE"],["002214","ZHHGSJZYXHH","中海沪港深价值优选混合","混合型","ZHONGHAIHUGANGSHENJIAZHIYOUXUANHUNHE"],["002215","ZSZYYNDKZ","招商招益一年定开债","定开债券","ZHAOSHANGZHAOYIYINIANDINGKAIZHAI"],["002218","NFHLA","南方弘利A","定开债券","NANFANGHONGLIA"],["002219","NFHLC","南方弘利C","定开债券","NANFANGHONGLIC"],["002220","NFRLBB","南方瑞利保本","保本型","NANFANGRUILIBAOBEN"],["002221","JSJZZQHH","嘉实价值增强混合","混合型","JIASHIJIAZHIZENGQIANGHUNHE"],["002222","JSXQSHH","嘉实新趋势混合","混合型","JIASHIXINQUSHIHUNHE"],["002223","ZYZXYNDKHH","中邮尊享一年定开混合","混合型","ZHONGYOUZUNXIANGYINIANDINGKAIHUNHE"],["002224","ZYJDSYCLDQKFHH","中邮绝对收益策略定期开放混合","混合型","ZHONGYOUJUEDUISHOUYICELUEDINGQIKAIFANGHUNHE"],["002225","CCXSYHHA","长城新视野混合A","混合型","CHANGCHENGXINSHIYEHUNHEA"],["002226","CCXSYHHC","长城新视野混合C","混合型","CHANGCHENGXINSHIYEHUNHEC"],["002227","CCXYXHHA","长城新优选混合A","混合型","CHANGCHENGXINYOUXUANHUNHEA"],["002228","CCXYXHHC","长城新优选混合C","混合型","CHANGCHENGXINYOUXUANHUNHEC"],["002229","HXJJZXGP","华夏经济转型股票","股票型","HUAXIAJINGJIZHUANXINGGUPIAO"],["002230","HXDZHHHQDII","华夏大中华混合(QDII)","QDII","HUAXIADAZHONGHUAHUNHEQDII"],["002231","HXXQSHHA","华夏新趋势混合A","混合型","HUAXIAXINQUSHIHUNHEA"],["002232","HXXQSHHC","华夏新趋势混合C","混合型","HUAXIAXINQUSHIHUNHEC"],["002233","GYFSHBLHPZHHC","工银丰收回报灵活配置混合C","混合型","GONGYINFENGSHOUHUIBAOLINGHUOPEIZHIHUNHEC"],["002234","TXTTSYHBB","泰信天天收益货币B","货币型","TAIXINTIANTIANSHOUYIHUOBIB"],["002235","TXTTSYHBE","泰信天天收益货币E","货币型","TAIXINTIANTIANSHOUYIHUOBIE"],["002236","DC360HLWDSJ100A","大成360互联网+大数据100A","股票指数","DACHENG360HULIANWANGDASHUJU100A"],["002237","DCJPLHPZHHC","大成景沛灵活配置混合C","混合型","DACHENGJINGPEILINGHUOPEIZHIHUNHEC"],["002238","HALHBBHHA","华安乐惠保本混合A","保本型","HUAANLEHUIBAOBENHUNHEA"],["002239","HALHBBHHC","华安乐惠保本混合C","保本型","HUAANLEHUIBAOBENHUNHEC"],["002240","DBZLHBA","德邦增利货币A","货币型","DEBANGZENGLIHUOBIA"],["002241","DBZLHBB","德邦增利货币B","货币型","DEBANGZENGLIHUOBIB"],["002242","GTRYRXBBHH","国投瑞银瑞兴保本混合","保本型","GUOTOURUIYINRUIXINGBAOBENHUNHE"],["002243","DFJZTHB","东方金证通货币","货币型","DONGFANGJINZHENGTONGHUOBI"],["002244","JSCCDTKJZTHH","景顺长城低碳科技主题混合","混合型","JINGSHUNCHANGCHENGDITANKEJIZHUTIHUNHE"],["002245","TKWJZLZQA","泰康稳健增利债券A","债券型","TAIKANGWENJIANZENGLIZHAIQUANA"],["002246","TKWJZLZQC","泰康稳健增利债券C","债券型","TAIKANGWENJIANZENGLIZHAIQUANC"],["002247","XJQHLHHYHBA","新疆前海联合海盈货币A","货币型","XINJIANGQIANHAILIANHEHAIYINGHUOBIA"],["002248","XJQHLHHYHBB","新疆前海联合海盈货币B","货币型","XINJIANGQIANHAILIANHEHAIYINGHUOBIB"],["002249","ZSJYBBHH","招商境远保本混合","保本型","ZHAOSHANGJINGYUANBAOBENHUNHE"],["002250","HTCXGGHLHH","红土创新改革红利混合","混合型","HONGTUCHUANGXINGAIGEHONGLIHUNHE"],["002251","HXJGAQHH","华夏军工安全混合","混合型","HUAXIAJUNGONGANQUANHUNHE"],["002252","RTCZ30LHPZHH","融通成长30灵活配置混合","混合型","RONGTONGCHENGZHANG30LINGHUOPEIZHIHUNHE"],["002253","RTCZ30LHPZHH","融通成长30灵活配置混合(后端)","混合型","RONGTONGCHENGZHANG30LINGHUOPEIZHIHUNHE"],["002254","CXJKCZA","长信金葵纯债A","定开债券","CHANGXINJINKUICHUNZHAIA"],["002255","CXJKCZC","长信金葵纯债C","定开债券","CHANGXINJINKUICHUNZHAIC"],["002256","JXXNYQCHHFQS","金信新能源汽车混合发起式","混合型","JINXINXINNENGYUANQICHEHUNHEFAQISHI"],["002259","PHJKHBHH","鹏华健康环保混合","混合型","PENGHUAJIANKANGHUANBAOHUNHE"],["002260","ZXJTTXB","中信建投添鑫宝","货币型","ZHONGXINJIANTOUTIANXINBAO"],["002261","ZYBLHHA","中银宝利混合A","混合型","ZHONGYINBAOLIHUNHEA"],["002262","ZYBLHHC","中银宝利混合C","混合型","ZHONGYINBAOLIHUNHEC"],["002263","TDHLDSJHHA","泰达宏利大数据混合A","混合型","TAIDAHONGLIDASHUJUHUNHEA"],["002264","HXLXJKHH","华夏乐享健康混合","混合型","HUAXIALEXIANGJIANKANGHUNHE"],["002265","XYXLZQ","鑫元兴利债券","债券型","XINYUANXINGLIZHAIQUAN"],["002266","BSAH18GYDKZA","博时安和18个月定开债A","定开债券","BOSHIANHE18GEYUEDINGKAIZHAIA"],["002267","BSAH18GYDKZC","博时安和18个月定开债C","定开债券","BOSHIANHE18GEYUEDINGKAIZHAIC"],["002268","XYFLZQ","兴业丰利债券","债券型","XINGYEFENGLIZHAIQUAN"],["002269","YHDSJLHPZDKHH","银华大数据灵活配置定开混合","混合型","YINHUADASHUJULINGHUOPEIZHIDINGKAIHUNHE"],["002270","DWAYLHLHPZHH","东吴安盈量化灵活配置混合","混合型","DONGWUANYINGLIANGHUALINGHUOPEIZHIHUNHE"],["002271","ZSAHBBHH","招商安弘保本混合","保本型","ZHAOSHANGANHONGBAOBENHUNHE"],["002272","XHKJCXZTLHPZHH","新华科技创新主题灵活配置混合","混合型","XINHUAKEJICHUANGXINZHUTILINGHUOPEIZHIHUNHE"],["002273","TDHLCYHHB","泰达宏利创益混合B","混合型","TAIDAHONGLICHUANGYIHUNHEB"],["002274","ZYCZJLZQA","中邮纯债聚利债券A","债券型","ZHONGYOUCHUNZHAIJULIZHAIQUANA"],["002275","ZYCZJLZQC","中邮纯债聚利债券C","债券型","ZHONGYOUCHUNZHAIJULIZHAIQUANC"],["002278","ZYWJHYZQ","中邮稳健合赢债券","债券型","ZHONGYOUWENJIANHEYINGZHAIQUAN"],["002279","ZSHYCZ","浙商惠盈纯债","债券型","ZHESHANGHUIYINGCHUNZHAI"],["002280","HFAXBBHH","华富安享保本混合","保本型","HUAFUANXIANGBAOBENHUNHE"],["002281","JXAXBBSHHH","建信安心保本三号混合","保本型","JIANXINANXINBAOBENSANHAOHUNHE"],["002282","PADHAXBBHH","平安大华安享保本混合","保本型","PINGANDAHUAANXIANGBAOBENHUNHE"],["002283","CSTYCZA","长盛同裕纯债A","债券型","CHANGSHENGTONGYUCHUNZHAIA"],["002284","CSTYCZC","长盛同裕纯债C","债券型","CHANGSHENGTONGYUCHUNZHAIC"],["002285","CSTYCZE","长盛同裕纯债E","债券型","CHANGSHENGTONGYUCHUNZHAIE"],["002286","ZYMYZZQRMB","中银美元债债券人民币","QDII","ZHONGYINMEIYUANZHAIZHAIQUANRENMINBI"],["002287","ZYMYZZQMY","中银美元债债券美元","QDII","ZHONGYINMEIYUANZHAIZHAIQUANMEIYUAN"],["002288","ZYWJBB","中银稳进保本","保本型","ZHONGYINWENJINBAOBEN"],["002290","DCJHLHPZHHC","大成景辉灵活配置混合C","混合型","DACHENGJINGHUILINGHUOPEIZHIHUNHEC"],["002291","NAAXBBHH","诺安安鑫保本混合","保本型","NUOANANXINBAOBENHUNHE"],["002292","NAYXBB","诺安益鑫保本","保本型","NUOANYIXINBAOBEN"],["002293","NFYHBB","南方益和保本","保本型","NANFANGYIHEBAOBEN"],["002294","BSXJYHHC","博时新机遇混合C","混合型","BOSHIXINJIYUHUNHEC"],["002295","GFWABB","广发稳安保本","保本型","GUANGFAWENANBAOBEN"],["002296","CCJABB","长城久安保本","保本型","CHANGCHENGJIUANBAOBEN"],["002297","FZFBYXLHPZHHC","方正富邦优选灵活配置混合C","混合型","FANGZHENGFUBANGYOUXUANLINGHUOPEIZHIHUNHEC"],["002300","CSYLHYLHPZGP","长盛医疗行业量化配置股票","股票型","CHANGSHENGYILIAOHANGYELIANGHUAPEIZHIGUPIAO"],["002301","XYJSLHPZHHA","兴业聚盛灵活配置混合A","混合型","XINGYEJUSHENGLINGHUOPEIZHIHUNHEA"],["002302","XWTBB","新沃通宝B","货币型","XINWOTONGBAOB"],["002303","JYZHSHHH","金鹰智慧生活混合","混合型","JINYINGZHIHUISHENGHUOHUNHE"],["002304","PADHAXBBHH","平安大华安心保本混合","保本型","PINGANDAHUAANXINBAOBENHUNHE"],["002305","GDFGLDHH","光大风格轮动混合","混合型","GUANGDAFENGGELUNDONGHUNHE"],["002306","YHHLZQ","银华合利债券","债券型","YINHUAHELIZHAIQUAN"],["002307","YHDYSYLHPZHH","银华多元视野灵活配置混合","混合型","YINHUADUOYUANSHIYELINGHUOPEIZHIHUNHE"],["002308","AXAYBBHH","安信安盈保本混合","保本型","ANXINANYINGBAOBENHUNHE"],["002309","GSABWDHBHHC","国寿安保稳定回报混合C","混合型","GUOSHOUANBAOWENDINGHUIBAOHUNHEC"],["002310","CJHXHS300ZSZQA","创金合信沪深300指数增强A","股票指数","CHUANGJINHEXINHUSHEN300ZHISHUZENGQIANGA"],["002311","CJHXZZ500ZSZQA","创金合信中证500指数增强A","股票指数","CHUANGJINHEXINZHONGZHENG500ZHISHUZENGQIANGA"],["002312","GSABWJHBHHC","国寿安保稳健回报混合C","混合型","GUOSHOUANBAOWENJIANHUIBAOHUNHEC"],["002313","TDHLXQDHHB","泰达宏利新起点混合B","混合型","TAIDAHONGLIXINQIDIANHUNHEB"],["002314","TDHLXSLHHB","泰达宏利新思路混合B","混合型","TAIDAHONGLIXINSILUHUNHEB"],["002315","CJHXHS300ZSZQC","创金合信沪深300指数增强C","股票指数","CHUANGJINHEXINHUSHEN300ZHISHUZENGQIANGC"],["002316","CJHXZZ500ZSZQC","创金合信中证500指数增强C","股票指数","CHUANGJINHEXINZHONGZHENG500ZHISHUZENGQIANGC"],["002317","ZSRYHH","招商睿逸混合","混合型","ZHAOSHANGRUIYIHUNHE"],["002318","PHTLJYXHBA","鹏华添利交易型货币A","货币型","PENGHUATIANLIJIAOYIXINGHUOBIA"],["002322","YHHLLHPZHHC","银华汇利灵活配置混合C","混合型","YINHUAHUILILINGHUOPEIZHIHUNHEC"],["002323","YHWLLHPZHHC","银华稳利灵活配置混合C","混合型","YINHUAWENLILINGHUOPEIZHIHUNHEC"],["002324","NFRTYA","南方日添益A","货币型","NANFANGRITIANYIA"],["002325","NFRTYE","南方日添益E","货币型","NANFANGRITIANYIE"],["002326","YHJLLHPZHHC","银华聚利灵活配置混合C","混合型","YINHUAJULILINGHUOPEIZHIHUNHEC"],["002327","YHHLLHPZHHC","银华恒利灵活配置混合C","混合型","YINHUAHENGLILINGHUOPEIZHIHUNHEC"],["002328","YHTLLHPZHHC","银华泰利灵活配置混合C","混合型","YINHUATAILILINGHUOPEIZHIHUNHEC"],["002330","XYJBLHPZHH","兴业聚宝灵活配置混合","混合型","XINGYEJUBAOLINGHUOPEIZHIHUNHE"],["002331","TKATHBHH","泰康安泰回报混合","混合型","TAIKANGANTAIHUIBAOHUNHE"],["002332","HFJXHGSA","汇丰晋信沪港深A","股票型","HUIFENGJINXINHUGANGSHENA"],["002333","HFJXHGSC","汇丰晋信沪港深C","股票型","HUIFENGJINXINHUGANGSHENC"],["002334","HFJXDPBDGPA","汇丰晋信大盘波动股票A","股票型","HUIFENGJINXINDAPANBODONGGUPIAOA"],["002335","HFJXDPBDGPC","汇丰晋信大盘波动股票C","股票型","HUIFENGJINXINDAPANBODONGGUPIAOC"],["002336","CJHXZXCZ","创金合信尊享纯债","债券型","CHUANGJINHEXINZUNXIANGCHUNZHAI"],["002337","CJHXZYCZZQ","创金合信尊盈纯债债券","债券型","CHUANGJINHEXINZUNYINGCHUNZHAIZHAIQUAN"],["002338","XYBBHH","兴业保本混合","保本型","XINGYEBAOBENHUNHE"],["002339","HFTYLSYHHC","海富通养老收益混合C","混合型","HAIFUTONGYANGLAOSHOUYIHUNHEC"],["002340","FGJZYSHH","富国价值优势混合","混合型","FUGUOJIAZHIYOUSHIHUNHE"],["002341","ZSZRCZFQSA","招商招瑞纯债发起式A","债券型","ZHAOSHANGZHAORUICHUNZHAIFAQISHIA"],["002342","RTZYZQAB","融通增益债券A/B","债券型","RONGTONGZENGYIZHAIQUANAB"],["002343","RTZYZQAB","融通增益债券A/B(后端)","债券型","RONGTONGZENGYIZHAIQUANAB"],["002344","RTZYZQC","融通增益债券C","债券型","RONGTONGZENGYIZHAIQUANC"],["002345","HXGDZZHH","华夏高端制造混合","混合型","HUAXIAGAODUANZHIZAOHUNHE"],["002346","HXDCZQA","华夏鼎诚债券A","债券型","HUAXIADINGCHENGZHAIQUANA"],["002347","HXDCZQI","华夏鼎诚债券I","债券型","HUAXIADINGCHENGZHAIQUANI"],["002348","HXDXZQA","华夏鼎新债券A","债券型","HUAXIADINGXINZHAIQUANA"],["002349","HXDXZQI","华夏鼎新债券I","债券型","HUAXIADINGXINZHAIQUANI"],["002350","HAAHBBHH","华安安华保本混合","保本型","HUAANANHUABAOBENHUNHE"],["002351","YFDYXHBZQ","易方达裕祥回报债券","债券型","YIFANGDAYUXIANGHUIBAOZHAIQUAN"],["002354","BSYTCZ","博时裕腾纯债","债券型","BOSHIYUTENGCHUNZHAI"],["002355","GTRYSYLYNZQ","国投瑞银岁赢利一年债券","定开债券","GUOTOURUIYINSUIYINGLIYINIANZHAIQUAN"],["002356","BSAT18GYDKZA","博时安泰18个月定开债A","定开债券","BOSHIANTAI18GEYUEDINGKAIZHAIA"],["002357","BSAT18GYDKZC","博时安泰18个月定开债C","定开债券","BOSHIANTAI18GEYUEDINGKAIZHAIC"],["002358","GTRYRXBBHH","国投瑞银瑞祥保本混合","保本型","GUOTOURUIYINRUIXIANGBAOBENHUNHE"],["002360","QHKYQJNYHHC","前海开源清洁能源混合C","混合型","QIANHAIKAIYUANQINGJIENENGYUANHUNHEC"],["002361","GFHRZQA","国富恒瑞债券A","债券型","GUOFUHENGRUIZHAIQUANA"],["002362","GFHRZQC","国富恒瑞债券C","债券型","GUOFUHENGRUIZHAIQUANC"],["002363","HAAKBBHHA","华安安康保本混合A","保本型","HUAANANKANGBAOBENHUNHEA"],["002364","HAAKBBHHC","华安安康保本混合C","保本型","HUAANANKANGBAOBENHUNHEC"],["002365","GLAXXLHPZHHA","国联安鑫禧灵活配置混合A","混合型","GUOLIANANXINXILINGHUOPEIZHIHUNHEA"],["002366","GLAXXLHPZHHC","国联安鑫禧灵活配置混合C","混合型","GUOLIANANXINXILINGHUOPEIZHIHUNHEC"],["002367","GLAAWBBHH","国联安安稳保本混合","保本型","GUOLIANANANWENBAOBENHUNHE"],["002368","GLAXYLHPZHHA","国联安鑫悦灵活配置混合A","混合型","GUOLIANANXINYUELINGHUOPEIZHIHUNHEA"],["002369","GLAXYLHPZHHC","国联安鑫悦灵活配置混合C","混合型","GUOLIANANXINYUELINGHUOPEIZHIHUNHEC"],["002370","DCJXLHPZHHC","大成景秀灵活配置混合C","混合型","DACHENGJINGXIULINGHUOPEIZHIHUNHEC"],["002371","DCJMLHPZHHC","大成景明灵活配置混合C","混合型","DACHENGJINGMINGLINGHUOPEIZHIHUNHEC"],["002372","DCJSLHPZHHC","大成景穗灵活配置混合C","混合型","DACHENGJINGSUILINGHUOPEIZHIHUNHEC"],["002373","DCJYLHPZHHC","大成景源灵活配置混合C","混合型","DACHENGJINGYUANLINGHUOPEIZHIHUNHEC"],["002374","DCJPLHPZHHC","大成景鹏灵活配置混合C","混合型","DACHENGJINGPENGLINGHUOPEIZHIHUNHEC"],["002375","DCJYLHPZHHC","大成景裕灵活配置混合C","混合型","DACHENGJINGYULINGHUOPEIZHIHUNHEC"],["002376","GSABHXCYHH","国寿安保核心产业混合","混合型","GUOSHOUANBAOHEXINCHANYEHUNHE"],["002377","JXMBSYYNQZQ","建信目标收益一年期债券","定开债券","JIANXINMUBIAOSHOUYIYINIANQIZHAIQUAN"],["002378","JXAXBBWHHH","建信安心保本五号混合","保本型","JIANXINANXINBAOBENWUHAOHUNHE"],["002379","GYXGZXPRMB","工银香港中小盘人民币","QDII","GONGYINXIANGGANGZHONGXIAOPANRENMINBI"],["002380","GYXGZXPMY","工银香港中小盘美元","QDII","GONGYINXIANGGANGZHONGXIAOPANMEIYUAN"],["002381","DHXRA","东海祥瑞A","债券型","DONGHAIXIANGRUIA"],["002382","DHXRC","东海祥瑞C","债券型","DONGHAIXIANGRUIC"],["002383","DCQSHBLHPZHH","大成趋势回报灵活配置混合","混合型","DACHENGQUSHIHUIBAOLINGHUOPEIZHIHUNHE"],["002385","BSHS300ZSC","博时沪深300指数C","股票指数","BOSHIHUSHEN300ZHISHUC"],["002386","GYZGZZ2025GP","工银中国制造2025股票","股票型","GONGYINZHONGGUOZHIZAO2025GUPIAO"],["002387","GYHGSGP","工银沪港深股票","股票型","GONGYINHUGANGSHENGUPIAO"],["002388","THYLLHPZHH","天弘裕利灵活配置混合","混合型","TIANHONGYULILINGHUOPEIZHIHUNHE"],["002389","ZSADBBHHA","招商安德保本混合A","保本型","ZHAOSHANGANDEBAOBENHUNHEA"],["002390","ZSADBBHHC","招商安德保本混合C","保本型","ZHAOSHANGANDEBAOBENHUNHEC"],["002391","HAQQMYSYZRMBA","华安全球美元收益债人民币A","QDII","HUAANQUANQIUMEIYUANSHOUYIZHAIRENMINBIA"],["002392","HAQQMYSYZMYXHA","华安全球美元收益债美元现汇A","QDII","HUAANQUANQIUMEIYUANSHOUYIZHAIMEIYUANXIANHUIA"],["002393","HAQQMYSYZC","华安全球美元收益债C","QDII","HUAANQUANQIUMEIYUANSHOUYIZHAIC"],["002395","PHFSDKZA","鹏华丰尚定开债A","定开债券","PENGHUAFENGSHANGDINGKAIZHAIA"],["002396","PHFSDKZB","鹏华丰尚定开债B","定开债券","PENGHUAFENGSHANGDINGKAIZHAIB"],["002397","ZYZLZQ","中邮增力债券","债券型","ZHONGYOUZENGLIZHAIQUAN"],["002398","HAAXBBHHA","华安安禧保本混合A","保本型","HUAANANXIBAOBENHUNHEA"],["002399","HAAXBBHHC","华安安禧保本混合C","保本型","HUAANANXIBAOBENHUNHEC"],["002400","NFYZMYZRMBA","南方亚洲美元债人民币A","QDII","NANFANGYAZHOUMEIYUANZHAIRENMINBIA"],["002401","NFYZMYZRMBC","南方亚洲美元债人民币C","QDII","NANFANGYAZHOUMEIYUANZHAIRENMINBIC"],["002402","NFYZMYZMYXHA","南方亚洲美元债美元现汇A","QDII","NANFANGYAZHOUMEIYUANZHAIMEIYUANXIANHUIA"],["002403","NFYZMYZMYXHC","南方亚洲美元债美元现汇C","QDII","NANFANGYAZHOUMEIYUANZHAIMEIYUANXIANHUIC"],["002404","BSYQCZC","博时裕乾纯债C","债券型","BOSHIYUQIANCHUNZHAIC"],["002407","QHKYHYBBHH","前海开源恒远保本混合","保本型","QIANHAIKAIYUANHENGYUANBAOBENHUNHE"],["002408","ZXJTYG","中信建投医改","混合型","ZHONGXINJIANTOUYIGAI"],["002409","HXXHLHHA","华夏新活力混合A","混合型","HUAXIAXINHUOLIHUNHEA"],["002410","HXXHLHHC","华夏新活力混合C","混合型","HUAXIAXINHUOLIHUNHEC"],["002411","HXXJYHH","华夏新机遇混合","混合型","HUAXIAXINJIYUHUNHE"],["002412","HFAFBBHH","华富安福保本混合","保本型","HUAFUANFUBAOBENHUNHE"],["002413","ZYRLHHA","中银瑞利混合A","混合型","ZHONGYINRUILIHUNHEA"],["002414","ZYRLHHC","中银瑞利混合C","混合型","ZHONGYINRUILIHUNHEC"],["002415","RTTYBBHH","融通通盈保本混合","保本型","RONGTONGTONGYINGBAOBENHUNHE"],["002416","ZSFLLHPZHHC","招商丰利灵活配置混合C","混合型","ZHAOSHANGFENGLILINGHUOPEIZHIHUNHEC"],["002417","ZSFSWDZZHHC","招商丰盛稳定增长混合C","混合型","ZHAOSHANGFENGSHENGWENDINGZENGZHANGHUNHEC"],["002418","HTFYXHBLHPZHHC","汇添富优选回报灵活配置混合C","混合型","HUITIANFUYOUXUANHUIBAOLINGHUOPEIZHIHUNHEC"],["002419","HTFYABBHH","汇添富盈安保本混合","保本型","HUITIANFUYINGANBAOBENHUNHE"],["002420","HTFYXBBHH","汇添富盈鑫保本混合","保本型","HUITIANFUYINGXINBAOBENHUNHE"],["002421","XHXYZQA","新华信用增强A","债券型","XINHUAXINYONGZENGQIANGA"],["002422","XHXYZQC","新华信用增强C","债券型","XINHUAXINYONGZENGQIANGC"],["002423","HBBPMGXFMY","华宝标普美国消费美元","QDII-指数","HUABAOBIAOPUMEIGUOXIAOFEIMEIYUAN"],["002424","BSWTYLZTHH","博时文体娱乐主题混合","混合型","BOSHIWENTIYULEZHUTIHUNHE"],["002425","JYBBHHC","金鹰保本混合C","保本型","JINYINGBAOBENHUNHEC"],["002426","HAQQMYPXZRMBA","华安全球美元票息债人民币A","QDII","HUAANQUANQIUMEIYUANPIAOXIZHAIRENMINBIA"],["002427","HAQQMYPXZMYXHA","华安全球美元票息债美元现汇A","QDII","HUAANQUANQIUMEIYUANPIAOXIZHAIMEIYUANXIANHUIA"],["002429","HAQQMYPXZC","华安全球美元票息债C","QDII","HUAANQUANQIUMEIYUANPIAOXIZHAIC"],["002430","ZYFLHHA","中银丰利混合A","混合型","ZHONGYINFENGLIHUNHEA"],["002431","ZYFLHHC","中银丰利混合C","混合型","ZHONGYINFENGLIHUNHEC"],["002432","THLXBBHH","天弘乐享保本混合","保本型","TIANHONGLEXIANGBAOBENHUNHE"],["002433","THJLHH","天弘金利混合","混合型","TIANHONGJINLIHUNHE"],["002434","ZYHLHHA","中银宏利混合A","混合型","ZHONGYINHONGLIHUNHEA"],["002435","ZYHLHHC","中银宏利混合C","混合型","ZHONGYINHONGLIHUNHEC"],["002436","STMGHLHBHHC","上投摩根红利回报混合C","混合型","SHANGTOUMOGENHONGLIHUIBAOHUNHEC"],["002437","STMGTYNFHHC","上投摩根天颐年丰混合C","混合型","SHANGTOUMOGENTIANYINIANFENGHUNHEC"],["002438","CJHXZSCZ","创金合信尊盛纯债","债券型","CHUANGJINHEXINZUNSHENGCHUNZHAI"],["002440","ZJXABBHH","中加心安保本混合","保本型","ZHONGJIAXINANBAOBENHUNHE"],["002441","DBXTLZQC","德邦新添利债券C","债券型","DEBANGXINTIANLIZHAIQUANC"],["002442","XYHLZQ","鑫元汇利债券","债券型","XINYUANHUILIZHAIQUAN"],["002443","QHKYHGSLTJXHH","前海开源沪港深龙头精选混合","混合型","QIANHAIKAIYUANHUGANGSHENLONGTOUJINGXUANHUNHE"],["002445","XYFTZQ","兴业丰泰债券","债券型","XINGYEFENGTAIZHAIQUAN"],["002446","GFWXBB","广发稳鑫保本","保本型","GUANGFAWENXINBAOBEN"],["002447","BSYACZ","博时裕安纯债","债券型","BOSHIYUANCHUNZHAI"],["002448","JXHF","江信汇福","定开债券","JIANGXINHUIFU"],["002449","MSJYLHZGHH","民生加银量化中国混合","混合型","MINSHENGJIAYINLIANGHUAZHONGGUOHUNHE"],["002450","PADHRXWYHHA","平安大华睿享文娱混合A","混合型","PINGANDAHUARUIXIANGWENYUHUNHEA"],["002451","PADHRXWYHHC","平安大华睿享文娱混合C","混合型","PINGANDAHUARUIXIANGWENYUHUNHEC"],["002452","MSJYHXZQ","民生加银和鑫债券","债券型","MINSHENGJIAYINHEXINZHAIQUAN"],["002453","JTJWBBHHA","九泰久稳保本混合A","保本型","JIUTAIJIUWENBAOBENHUNHEA"],["002454","JTJWBBHHC","九泰久稳保本混合C","保本型","JIUTAIJIUWENBAOBENHUNHEC"],["002455","MSJYXXHH","民生加银鑫喜混合","混合型","MINSHENGJIAYINXINXIHUNHE"],["002456","ZSAYBBHHA","招商安元保本混合A","保本型","ZHAOSHANGANYUANBAOBENHUNHEA"],["002457","ZSAYBBHHC","招商安元保本混合C","保本型","ZHAOSHANGANYUANBAOBENHUNHEC"],["002458","GTMLBBHH","国泰民利保本混合","保本型","GUOTAIMINLIBAOBENHUNHE"],["002459","HXDLZQFQSA","华夏鼎利债券发起式A","债券型","HUAXIADINGLIZHAIQUANFAQISHIA"],["002460","HXDLZQFQSC","华夏鼎利债券发起式C","债券型","HUAXIADINGLIZHAIQUANFAQISHIC"],["002461","ZYZLHHA","中银珍利混合A","混合型","ZHONGYINZHENLIHUNHEA"],["002462","ZYZLHHC","中银珍利混合C","混合型","ZHONGYINZHENLIHUNHEC"],["002464","CJHXZLCZ","创金合信尊利纯债","债券型","CHUANGJINHEXINZUNLICHUNZHAI"],["002465","DXZZYXHH","东兴众智优选混合","混合型","DONGXINGZHONGZHIYOUXUANHUNHE"],["002466","BSYXCZ","博时裕新纯债","债券型","BOSHIYUXINCHUNZHAI"],["002467","GTRYQQZQRMB","国投瑞银全球债券人民币","QDII","GUOTOURUIYINQUANQIUZHAIQUANRENMINBI"],["002468","GTRYQQZQMYXH","国投瑞银全球债券美元现汇","QDII","GUOTOURUIYINQUANQIUZHAIQUANMEIYUANXIANHUI"],["002469","HTBRJYHBB","华泰柏瑞交易货币B","货币型","HUATAIBAIRUIJIAOYIHUOBIB"],["002470","TDDYHBZQA","泰达多元回报债券A","债券型","TAIDADUOYUANHUIBAOZHAIQUANA"],["002471","TDDYHBZQC","泰达多元回报债券C","债券型","TAIDADUOYUANHUIBAOZHAIQUANC"],["002474","ZYRXZQZ","中邮睿信增强债","债券型","ZHONGYOURUIXINZENGQIANGZHAI"],["002476","BSAR18GYDKZA","博时安瑞18个月定开债A","定开债券","BOSHIANRUI18GEYUEDINGKAIZHAIA"],["002477","BSAR18GYDKZC","博时安瑞18个月定开债C","定开债券","BOSHIANRUI18GEYUEDINGKAIZHAIC"],["002478","ZOTTZQA","中欧天添债券A","定开债券","ZHONGOUTIANTIANZHAIQUANA"],["002479","ZOTTZQC","中欧天添债券C","定开债券","ZHONGOUTIANTIANZHAIQUANC"],["002480","DFRJBBHH","东方荣家保本混合","保本型","DONGFANGRONGJIABAOBENHUNHE"],["002481","YHSDLZQ","银华双动力债券","债券型","YINHUASHUANGDONGLIZHAIQUAN"],["002482","BYHLWHGSHH","宝盈互联网沪港深混合","混合型","BAOYINGHULIANWANGHUGANGSHENHUNHE"],["002483","FGTLDKZFQS","富国泰利定开债发起式","定开债券","FUGUOTAILIDINGKAIZHAIFAQISHI"],["002485","GLATYHHC","国联安通盈混合C","混合型","GUOLIANANTONGYINGHUNHEC"],["002486","SYHTLZQ","上银慧添利债券","债券型","SHANGYINHUITIANLIZHAIQUAN"],["002487","HTFWTLDKZA","汇添富稳添利定开债A","定开债券","HUITIANFUWENTIANLIDINGKAIZHAIA"],["002488","HTFWTLDKZC","汇添富稳添利定开债C","定开债券","HUITIANFUWENTIANLIDINGKAIZHAIC"],["002489","GTMFBBHH","国泰民福保本混合","保本型","GUOTAIMINFUBAOBENHUNHE"],["002490","JYYQBBHH","金鹰元祺保本混合","保本型","JINYINGYUANQIBAOBENHUNHE"],["002491","YHTYDKZ","银华添益定开债","定开债券","YINHUATIANYIDINGKAIZHAI"],["002492","GYYYXDQZFZQC","工银月月薪定期支付债券C","债券型","GONGYINYUEYUEXINDINGQIZHIFUZHAIQUANC"],["002494","XYJYLHPZHH","兴业聚盈灵活配置混合","混合型","XINGYEJUYINGLINGHUOPEIZHIHUNHE"],["002497","DFSSLHPZHH","东方盛世灵活配置混合","混合型","DONGFANGSHENGSHILINGHUOPEIZHIHUNHE"],["002498","XYJXLHPZHH","兴业聚鑫灵活配置混合","混合型","XINGYEJUXINLINGHUOPEIZHIHUNHE"],["002499","DBCZ9GYDKZA","德邦纯债9个月定开债A","定开债券","DEBANGCHUNZHAI9GEYUEDINGKAIZHAIA"],["002500","DBCZ9GYDKZC","德邦纯债9个月定开债C","定开债券","DEBANGCHUNZHAI9GEYUEDINGKAIZHAIC"],["002501","YHYJZQ","银华远景债券","债券型","YINHUAYUANJINGZHAIQUAN"],["002502","ZYTLHHA","中银腾利混合A","混合型","ZHONGYINTENGLIHUNHEA"],["002503","ZYTLHHC","中银腾利混合C","混合型","ZHONGYINTENGLIHUNHEC"],["002504","PHJDBBHHA","鹏华金鼎保本混合A","保本型","PENGHUAJINDINGBAOBENHUNHEA"],["002505","PHJDBBHHC","鹏华金鼎保本混合C","保本型","PENGHUAJINDINGBAOBENHUNHEC"],["002506","ZSZY18GYDKZ","招商招盈18个月定开债","定开债券","ZHAOSHANGZHAOYING18GEYUEDINGKAIZHAI"],["002507","XYDKZC","兴业定开债C","定开债券","XINGYEDINGKAIZHAIC"],["002508","HBBXZQA","华宝宝鑫债券A","定开债券","HUABAOBAOXINZHAIQUANA"],["002509","HBBXZQC","华宝宝鑫债券C","定开债券","HUABAOBAOXINZHAIQUANC"],["002510","SWLXZZ500ZSZQ","申万菱信中证500指数增强","股票指数","SHENWANLINGXINZHONGZHENG500ZHISHUZENGQIANG"],["002512","CCJRBB","长城久润保本","保本型","CHANGCHENGJIURUNBAOBEN"],["002513","JYYABBHHC","金鹰元安保本混合C","保本型","JINYINGYUANANBAOBENHUNHEC"],["002514","ZSFYHHA","招商丰益混合A","混合型","ZHAOSHANGFENGYIHUNHEA"],["002515","ZSFYHHC","招商丰益混合C","混合型","ZHAOSHANGFENGYIHUNHEC"],["002516","ZSFDHHA","招商丰达混合A","混合型","ZHAOSHANGFENGDAHUNHEA"],["002517","ZSFDHHC","招商丰达混合C","混合型","ZHAOSHANGFENGDAHUNHEC"],["002518","MSJYXFHH","民生加银鑫福混合","混合型","MINSHENGJIAYINXINFUHUNHE"],["002519","BSYJCZ","博时裕景纯债","债券型","BOSHIYUJINGCHUNZHAI"],["002520","ZSZRCZFQSC","招商招瑞纯债发起式C","债券型","ZHAOSHANGZHAORUICHUNZHAIFAQISHIC"],["002521","YYSLZQA","永赢双利债券A","债券型","YONGYINGSHUANGLIZHAIQUANA"],["002522","YYSLZQC","永赢双利债券C","债券型","YONGYINGSHUANGLIZHAIQUANC"],["002523","GDHLCZ","光大恒利纯债","债券型","GUANGDAHENGLICHUNZHAI"],["002524","XYFYZQ","兴业福益债券","债券型","XINGYEFUYIZHAIQUAN"],["002527","NFAXJDSY","南方安享绝对收益","混合型","NANFANGANXIANGJUEDUISHOUYI"],["002528","TKAYCZA","泰康安益纯债A","债券型","TAIKANGANYICHUNZHAIA"],["002529","TKAYCZC","泰康安益纯债C","债券型","TAIKANGANYICHUNZHAIC"],["002530","BSBZBBA","博时保泽保本A","保本型","BOSHIBAOZEBAOBENA"],["002531","BSBZBBC","博时保泽保本C","保本型","BOSHIBAOZEBAOBENC"],["002532","ZOQYZQ","中欧强盈债券","定开债券","ZHONGOUQIANGYINGZHAIQUAN"],["002533","ZJXXHHC","中加心享混合C","混合型","ZHONGJIAXINXIANGHUNHEC"],["002534","HAWGSYZQA","华安稳固收益债券A","债券型","HUAANWENGUSHOUYIZHAIQUANA"],["002535","ZYXLHHA","中银鑫利混合A","混合型","ZHONGYINXINLIHUNHEA"],["002536","ZYXLHHC","中银鑫利混合C","混合型","ZHONGYINXINLIHUNHEC"],["002537","PADHAYBBHH","平安大华安盈保本混合","保本型","PINGANDAHUAANYINGBAOBENHUNHE"],["002538","ZSFJHHA","招商丰嘉混合A","混合型","ZHAOSHANGFENGJIAHUNHEA"],["002539","ZSFJHHC","招商丰嘉混合C","混合型","ZHAOSHANGFENGJIAHUNHEC"],["002540","ZSFHHHA","招商丰和混合A","混合型","ZHAOSHANGFENGHEHUNHEA"],["002541","ZSFHHHC","招商丰和混合C","混合型","ZHAOSHANGFENGHEHUNHEC"],["002542","CCJDBBHH","长城久鼎保本混合","保本型","CHANGCHENGJIUDINGBAOBENHUNHE"],["002543","CCJYBBA","长城久益保本A","保本型","CHANGCHENGJIUYIBAOBENA"],["002544","CCJYBBC","长城久益保本C","保本型","CHANGCHENGJIUYIBAOBENC"],["002545","DFYLHPZHH","东方岳灵活配置混合","混合型","DONGFANGYUELINGHUOPEIZHIHUNHE"],["002546","TKXYBHBE","泰康薪意保货币E","货币型","TAIKANGXINYIBAOHUOBIE"],["002547","MSJYYLFWHH","民生加银养老服务混合","混合型","MINSHENGJIAYINYANGLAOFUWUHUNHE"],["002548","JSWRCZZQ","嘉实稳瑞纯债债券","债券型","JIASHIWENRUICHUNZHAIZHAIQUAN"],["002549","JSWXCZZQA","嘉实稳祥纯债债券A","债券型","JIASHIWENXIANGCHUNZHAIZHAIQUANA"],["002550","JSWRZQ","嘉实稳荣债券","债券型","JIASHIWENRONGZHAIQUAN"],["002551","JSWTZQ","嘉实稳泰债券","债券型","JIASHIWENTAIZHAIQUAN"],["002552","HXHLDKZ","华夏恒利定开债","定开债券","HUAXIAHENGLIDINGKAIZHAI"],["002553","BSCYCZHHC","博时创业成长混合C","混合型","BOSHICHUANGYECHENGZHANGHUNHEC"],["002554","XDAYCZZQ","信达澳银纯债债券","债券型","XINDAAOYINCHUNZHAIZHAIQUAN"],["002555","BSHGSYZQYJJC","博时沪港深优质企业基金C","混合型","BOSHIHUGANGSHENYOUZHIQIYEJIJINC"],["002556","BSSLZTGPC","博时丝路主题股票C","股票型","BOSHISILUZHUTIGUPIAOC"],["002557","BSLHPZHHC","博时灵活配置混合C","混合型","BOSHILINGHUOPEIZHIHUNHEC"],["002558","BSXRHHA","博时鑫瑞混合A","混合型","BOSHIXINRUIHUNHEA"],["002559","BSXRHHC","博时鑫瑞混合C","混合型","BOSHIXINRUIHUNHEC"],["002560","NAHXBBHH","诺安和鑫保本混合","保本型","NUOANHEXINBAOBENHUNHE"],["002561","DWAXLH","东吴安鑫量化","混合型","DONGWUANXINLIANGHUA"],["002562","HDHYLHHH","泓德泓益量化混合","混合型","HONGDEHONGYILIANGHUAHUNHE"],["002563","HDHHHH","泓德泓汇混合","混合型","HONGDEHONGHUIHUNHE"],["002564","XWTYLHPZHH","新沃通盈灵活配置混合","混合型","XINWOTONGYINGLINGHUOPEIZHIHUNHE"],["002565","CJHXXABBA","创金合信鑫安保本A","保本型","CHUANGJINHEXINXINANBAOBENA"],["002566","CJHXXABBC","创金合信鑫安保本C","保本型","CHUANGJINHEXINXINANBAOBENC"],["002567","DCGJAQZTHH","大成国家安全主题混合","混合型","DACHENGGUOJIAANQUANZHUTIHUNHE"],["002568","BSYFCZ","博时裕发纯债","债券型","BOSHIYUFACHUNZHAI"],["002569","BSYHCZZQ","博时裕弘纯债债券","债券型","BOSHIYUHONGCHUNZHAIZHAIQUAN"],["002570","HFCXDKZ","华福长禧定开债","定开债券","HUAFUCHANGXIDINGKAIZHAI"],["002571","CSTTZQA","长盛同泰债券A","债券型","CHANGSHENGTONGTAIZHAIQUANA"],["002572","CSTTZQC","长盛同泰债券C","债券型","CHANGSHENGTONGTAIZHAIQUANC"],["002573","JXAXBBLHHH","建信安心保本六号混合","保本型","JIANXINANXINBAOBENLIUHAOHUNHE"],["002574","ZSRQHH","招商瑞庆混合","混合型","ZHAOSHANGRUIQINGHUNHE"],["002575","ZSFRHHA","招商丰睿混合A","混合型","ZHAOSHANGFENGRUIHUNHEA"],["002576","ZSFRHHC","招商丰睿混合C","混合型","ZHAOSHANGFENGRUIHUNHEC"],["002577","NFXXHH","南方新兴混合","混合型","NANFANGXINXINGHUNHE"],["002578","BSYQCZZQ","博时裕泉纯债债券","债券型","BOSHIYUQUANCHUNZHAIZHAIQUAN"],["002579","RTZLZQ","融通增利债券","债券型","RONGTONGZENGLIZHAIQUAN"],["002580","TXXXLHPZHHC","泰信鑫选灵活配置混合C","混合型","TAIXINXINXUANLINGHUOPEIZHIHUNHEC"],["002581","ZSFKHHA","招商丰凯混合A","混合型","ZHAOSHANGFENGKAIHUNHEA"],["002582","ZSFKHHC","招商丰凯混合C","混合型","ZHAOSHANGFENGKAIHUNHEC"],["002583","TXHYJXHHC","泰信行业精选混合C","混合型","TAIXINHANGYEJINGXUANHUNHEC"],["002584","FADCYBBHH","富安达长盈保本混合","保本型","FUANDACHANGYINGBAOBENHUNHE"],["002585","JXAXBBQHHH","建信安心保本七号混合","保本型","JIANXINANXINBAOBENQIHAOHUNHE"],["002586","JYTLXYZZQA","金鹰添利信用债债券A","债券型","JINYINGTIANLIXINYONGZHAIZHAIQUANA"],["002587","JYTLXYZZQC","金鹰添利信用债债券C","债券型","JINYINGTIANLIXINYONGZHAIZHAIQUANC"],["002588","BSYZDSJ100","博时银智大数据100","股票指数","BOSHIYINZHIDASHUJU100"],["002589","SXZQBBHHA","山西证券保本混合A","保本型","SHANXIZHENGQUANBAOBENHUNHEA"],["002590","SXZQBBHHC","山西证券保本混合C","保本型","SHANXIZHENGQUANBAOBENHUNHEC"],["002591","ZOXYZLZQLOFE","中欧信用增利债券(LOF)E","债券型","ZHONGOUXINYONGZENGLIZHAIQUANLOFE"],["002592","ZOCZZQLOFE","中欧纯债债券(LOF)E","债券型","ZHONGOUCHUNZHAIZHAIQUANLOFE"],["002593","FGMLZGHH","富国美丽中国混合","混合型","FUGUOMEILIZHONGGUOHUNHE"],["002594","GYXDFWYHH","工银现代服务业混合","混合型","GONGYINXIANDAIFUWUYEHUNHE"],["002595","BSGY40ZTGP","博时工业4.0主题股票","股票型","BOSHIGONGYE40ZHUTIGUPIAO"],["002596","HSBB1H","华商保本1号","保本型","HUASHANGBAOBEN1HAO"],["002597","XYCZDLHH","兴业成长动力混合","混合型","XINGYECHENGZHANGDONGLIHUNHE"],["002598","PADHZNSHHHA","平安大华智能生活混合A","混合型","PINGANDAHUAZHINENGSHENGHUOHUNHEA"],["002599","PADHZNSHHHC","平安大华智能生活混合C","混合型","PINGANDAHUAZHINENGSHENGHUOHUNHEC"],["002600","YFDYJTL6GYDKZ","易方达裕景添利6个月定开债","定开债券","YIFANGDAYUJINGTIANLI6GEYUEDINGKAIZHAI"],["002601","ZYZQBB1H","中银证券保本1号","保本型","ZHONGYINZHENGQUANBAOBEN1HAO"],["002602","YFDFHHH","易方达丰惠混合","混合型","YIFANGDAFENGHUIHUNHE"],["002603","GYRFCZBNDKZ","工银瑞丰纯债半年定开债","定开债券","GONGYINRUIFENGCHUNZHAIBANNIANDINGKAIZHAI"],["002604","HXXQDHH","华夏新起点混合","混合型","HUAXIAXINQIDIANHUNHE"],["002605","RTXXFLHPZHH","融通新消费灵活配置混合","混合型","RONGTONGXINXIAOFEILINGHUOPEIZHIHUNHE"],["002606","RTXXFLHPZHH","融通新消费灵活配置混合(后端)","混合型","RONGTONGXINXIAOFEILINGHUOPEIZHIHUNHE"],["002607","RTZYZQ","融通增裕债券","债券型","RONGTONGZENGYUZHAIQUAN"],["002608","BSTHZQA","博时泰和债券A","债券型","BOSHITAIHEZHAIQUANA"],["002609","BSTHZQC","博时泰和债券C","债券型","BOSHITAIHEZHAIQUANC"],["002610","BSHJETFLJA","博时黄金ETF联接A","联接基金","BOSHIHUANGJINETFLIANJIEA"],["002611","BSHJETFLJC","博时黄金ETF联接C","联接基金","BOSHIHUANGJINETFLIANJIEC"],["002612","RTGQGGXJYLHPZHH","融通国企改革新机遇灵活配置混合","混合型","RONGTONGGUOQIGAIGEXINJIYULINGHUOPEIZHIHUNHE"],["002613","RTGQGGXJYLHPZHH","融通国企改革新机遇灵活配置混合(后端)","混合型","RONGTONGGUOQIGAIGEXINJIYULINGHUOPEIZHIHUNHE"],["002614","ZYYLHHA","中银颐利混合A","混合型","ZHONGYINYILIHUNHEA"],["002615","ZYYLHHC","中银颐利混合C","混合型","ZHONGYINYILIHUNHEC"],["002616","ZYYLHHA","中银益利混合A","混合型","ZHONGYINYILIHUNHEA"],["002617","ZYYLHHC","中银益利混合C","混合型","ZHONGYINYILIHUNHEC"],["002618","ZYYLHHA","中银裕利混合A","混合型","ZHONGYINYULIHUNHEA"],["002619","ZYYLHHC","中银裕利混合C","混合型","ZHONGYINYULIHUNHEC"],["002621","ZOXFZTGPA","中欧消费主题股票A","股票型","ZHONGOUXIAOFEIZHUTIGUPIAOA"],["002622","GFWYBB","广发稳裕保本","保本型","GUANGFAWENYUBAOBEN"],["002623","GFFWYJXHH","广发服务业精选混合","混合型","GUANGFAFUWUYEJINGXUANHUNHE"],["002624","GFYQJXHH","广发优企精选混合","混合型","GUANGFAYOUQIJINGXUANHUNHE"],["002625","BSAY6GY","博时安怡6个月","定开债券","BOSHIANYI6GEYUE"],["002626","ZSFYHHA","招商丰源混合A","混合型","ZHAOSHANGFENGYUANHUNHEA"],["002627","ZSFYHHC","招商丰源混合C","混合型","ZHAOSHANGFENGYUANHUNHEC"],["002628","ZSABBBHHA","招商安博保本混合A","保本型","ZHAOSHANGANBOBAOBENHUNHEA"],["002629","ZSABBBHHC","招商安博保本混合C","保本型","ZHAOSHANGANBOBAOBENHUNHEC"],["002630","JXRFLHPZHHA","江信瑞福灵活配置混合A","混合型","JIANGXINRUIFULINGHUOPEIZHIHUNHEA"],["002631","JXRFLHPZHHC","江信瑞福灵活配置混合C","混合型","JIANGXINRUIFULINGHUOPEIZHIHUNHEC"],["002632","XYSZZQZQA","鑫元双债增强债券A","债券型","XINYUANSHUANGZHAIZENGQIANGZHAIQUANA"],["002633","XYSZZQZQC","鑫元双债增强债券C","债券型","XINYUANSHUANGZHAIZENGQIANGZHAIQUANC"],["002634","HBWLZDHH","华宝未来主导混合","混合型","HUABAOWEILAIZHUDAOHUNHE"],["002635","RTZXZQ","融通增鑫债券","债券型","RONGTONGZENGXINZHAIQUAN"],["002636","GFJYZQA","广发集裕债券A","债券型","GUANGFAJIYUZHAIQUANA"],["002637","GFJYZQC","广发集裕债券C","债券型","GUANGFAJIYUZHAIQUANC"],["002638","XYTRZQ","兴业天融债券","债券型","XINGYETIANRONGZHAIQUAN"],["002639","THJZJXLHPZHH","天弘价值精选灵活配置混合","混合型","TIANHONGJIAZHIJINGXUANLINGHUOPEIZHIHUNHE"],["002640","ZXJTWYBB","中信建投稳溢保本","保本型","ZHONGXINJIANTOUWENYIBAOBEN"],["002641","BSAR18GYDKZA","博时安润18个月定开债A","定开债券","BOSHIANRUN18GEYUEDINGKAIZHAIA"],["002642","BSAR18GYDKZC","博时安润18个月定开债C","定开债券","BOSHIANRUN18GEYUEDINGKAIZHAIC"],["002643","PHXLHH","鹏华兴利混合","混合型","PENGHUAXINGLIHUNHE"],["002644","DCJRBBHHA","大成景荣保本混合A","保本型","DACHENGJINGRONGBAOBENHUNHEA"],["002645","DCJRBBHHC","大成景荣保本混合C","保本型","DACHENGJINGRONGBAOBENHUNHEC"],["002646","ZKWTHBA","中科沃土货币A","货币型","ZHONGKEWOTUHUOBIA"],["002647","ZKWTHBB","中科沃土货币B","货币型","ZHONGKEWOTUHUOBIB"],["002648","DFHJBBHH","东方合家保本混合","保本型","DONGFANGHEJIABAOBENHUNHE"],["002650","DFHWTLCZ","东方红稳添利纯债","债券型","DONGFANGHONGWENTIANLICHUNZHAI"],["002651","DFHHLZQA","东方红汇利债券A","债券型","DONGFANGHONGHUILIZHAIQUANA"],["002652","DFHHLZQC","东方红汇利债券C","债券型","DONGFANGHONGHUILIZHAIQUANC"],["002653","TKHGSJXHH","泰康沪港深精选混合","混合型","TAIKANGHUGANGSHENJINGXUANHUNHE"],["002654","STMGCLJXHH","上投摩根策略精选混合","混合型","SHANGTOUMOGENCELUEJINGXUANHUNHE"],["002655","NFZXJDSY","南方卓享绝对收益","混合型","NANFANGZHUOXIANGJUEDUISHOUYI"],["002656","NFCYBETFLJA","南方创业板ETF联接A","联接基金","NANFANGCHUANGYEBANETFLIANJIEA"],["002657","ZSAYBBHHA","招商安裕保本混合A","保本型","ZHAOSHANGANYUBAOBENHUNHEA"],["002658","ZSAYBBHHC","招商安裕保本混合C","保本型","ZHAOSHANGANYUBAOBENHUNHEC"],["002659","XYJQLHPZHH","兴业聚全灵活配置混合","混合型","XINGYEJUQUANLINGHUOPEIZHIHUNHE"],["002660","XYJYLHPZHH","兴业聚源灵活配置混合","混合型","XINGYEJUYUANLINGHUOPEIZHIHUNHE"],["002661","XYTXZQ","兴业天禧债券","债券型","XINGYETIANXIZHAIQUAN"],["002662","QHKYHGSDXFHHA","前海开源沪港深大消费混合A","混合型","QIANHAIKAIYUANHUGANGSHENDAXIAOFEIHUNHEA"],["002663","QHKYHGSDXFHHC","前海开源沪港深大消费混合C","混合型","QIANHAIKAIYUANHUGANGSHENDAXIAOFEIHUNHEC"],["002664","WJRHLHPZHHA","万家瑞和灵活配置混合A","混合型","WANJIARUIHELINGHUOPEIZHIHUNHEA"],["002665","WJRHLHPZHHC","万家瑞和灵活配置混合C","混合型","WANJIARUIHELINGHUOPEIZHIHUNHEC"],["002666","QHKYHGSCXCZHHA","前海开源沪港深创新成长混合A","混合型","QIANHAIKAIYUANHUGANGSHENCHUANGXINCHENGZHANGHUNHEA"],["002667","QHKYHGSCXCZHHC","前海开源沪港深创新成长混合C","混合型","QIANHAIKAIYUANHUGANGSHENCHUANGXINCHENGZHANGHUNHEC"],["002668","XYJFLHPZHH","兴业聚丰灵活配置混合","混合型","XINGYEJUFENGLINGHUOPEIZHIHUNHE"],["002669","HSWZCXHH","华商万众创新混合","混合型","HUASHANGWANZHONGCHUANGXINHUNHE"],["002670","WJRXLHPZHHA","万家瑞旭灵活配置混合A","混合型","WANJIARUIXULINGHUOPEIZHIHUNHEA"],["002671","WJRXLHPZHHC","万家瑞旭灵活配置混合C","混合型","WANJIARUIXULINGHUOPEIZHIHUNHEC"],["002672","NDHBA","诺德货币A","货币型","NUODEHUOBIA"],["002673","NDHBB","诺德货币B","货币型","NUODEHUOBIB"],["002674","ZRRFCZA","中融融丰纯债A","债券型","ZHONGRONGRONGFENGCHUNZHAIA"],["002675","ZRRFCZC","中融融丰纯债C","债券型","ZHONGRONGRONGFENGCHUNZHAIC"],["002677","GTRYHAZQA","国投瑞银和安债券A","债券型","GUOTOURUIYINHEANZHAIQUANA"],["002678","GTRYHAZQC","国投瑞银和安债券C","债券型","GUOTOURUIYINHEANZHAIQUANC"],["002679","GYAYHBA","工银安盈货币A","货币型","GONGYINANYINGHUOBIA"],["002680","GYAYHBB","工银安盈货币B","货币型","GONGYINANYINGHUOBIB"],["002681","JYYHBBA","金鹰元和保本A","保本型","JINYINGYUANHEBAOBENA"],["002682","JYYHBBC","金鹰元和保本C","保本型","JINYINGYUANHEBAOBENC"],["002683","MSJYQYKJLHPZHH","民生加银前沿科技灵活配置混合","混合型","MINSHENGJIAYINQIANYANKEJILINGHUOPEIZHIHUNHE"],["002684","MSJYXACZA","民生加银鑫安纯债A","债券型","MINSHENGJIAYINXINANCHUNZHAIA"],["002685","ZOFHHGSHHA","中欧丰泓沪港深混合A","混合型","ZHONGOUFENGHONGHUGANGSHENHUNHEA"],["002686","ZOFHHGSHHC","中欧丰泓沪港深混合C","混合型","ZHONGOUFENGHONGHUGANGSHENHUNHEC"],["002688","HTHTCYDKZA","红塔红土长益定开债A","定开债券","HONGTAHONGTUCHANGYIDINGKAIZHAIA"],["002689","HTHTCYDKZC","红塔红土长益定开债C","定开债券","HONGTAHONGTUCHANGYIDINGKAIZHAIC"],["002690","QHKYHZBBHHA","前海开源恒泽保本混合A","保本型","QIANHAIKAIYUANHENGZEBAOBENHUNHEA"],["002691","QHKYHZBBHHC","前海开源恒泽保本混合C","保本型","QIANHAIKAIYUANHENGZEBAOBENHUNHEC"],["002692","FGCXKJHH","富国创新科技混合","混合型","FUGUOCHUANGXINKEJIHUNHE"],["002693","ZYHLZQ","中银合利债券","债券型","ZHONGYINHELIZHAIQUAN"],["002695","PHXZDQKFHHA","鹏华兴泽定期开放混合A","混合型","PENGHUAXINGZEDINGQIKAIFANGHUNHEA"],["002696","PHXZDQKFHHC","鹏华兴泽定期开放混合C","混合型","PENGHUAXINGZEDINGQIKAIFANGHUNHEC"],["002697","ZOXFZTGPC","中欧消费主题股票C","股票型","ZHONGOUXIAOFEIZHUTIGUPIAOC"],["002698","BSYLCZZQ","博时裕利纯债债券","债券型","BOSHIYULICHUNZHAIZHAIQUAN"],["002699","HXXQHHHA","华夏新起航混合A","混合型","HUAXIAXINQIHANGHUNHEA"],["002700","HXXQHHHC","华夏新起航混合C","混合型","HUAXIAXINQIHANGHUNHEC"],["002701","DFHHYZQA","东方红汇阳债券A","债券型","DONGFANGHONGHUIYANGZHAIQUANA"],["002702","DFHHYZQC","东方红汇阳债券C","债券型","DONGFANGHONGHUIYANGZHAIQUANC"],["002703","CCJYBBHH","长城久源保本混合","保本型","CHANGCHENGJIUYUANBAOBENHUNHE"],["002704","DBCZYNDKZA","德邦纯债一年定开债A","定开债券","DEBANGCHUNZHAIYINIANDINGKAIZHAIA"],["002705","DBCZYNDKZC","德邦纯债一年定开债C","定开债券","DEBANGCHUNZHAIYINIANDINGKAIZHAIC"],["002706","MSJYXJTLHB","民生加银现金添利货币","货币型","MINSHENGJIAYINXIANJINTIANLIHUOBI"],["002708","DMJKCYHH","大摩健康产业混合","混合型","DAMOJIANKANGCHANYEHUNHE"],["002709","HTHTRRBHBA","红塔红土人人宝货币A","货币型","HONGTAHONGTURENRENBAOHUOBIA"],["002710","HTHTRRBHBB","红塔红土人人宝货币B","货币型","HONGTAHONGTURENRENBAOHUOBIB"],["002711","GFJFZQA","广发集丰债券A","债券型","GUANGFAJIFENGZHAIQUANA"],["002712","GFJFZQC","广发集丰债券C","债券型","GUANGFAJIFENGZHAIQUANC"],["002714","PHJCBBHH","鹏华金城保本混合","保本型","PENGHUAJINCHENGBAOBENHUNHE"],["002715","XHJKSHZTHH","新华健康生活主题混合","混合型","XINHUAJIANKANGSHENGHUOZHUTIHUNHE"],["002716","BSYTCZZQA","博时裕通纯债债券A","债券型","BOSHIYUTONGCHUNZHAIZHAIQUANA"],["002717","HTHTSLBBHHA","红塔红土盛隆保本混合A","保本型","HONGTAHONGTUSHENGLONGBAOBENHUNHEA"],["002718","HTHTSLBBHHC","红塔红土盛隆保本混合C","保本型","HONGTAHONGTUSHENGLONGBAOBENHUNHEC"],["002719","RTZXZQ","融通增祥债券","债券型","RONGTONGZENGXIANGZHAIQUAN"],["002720","GSABZLZQHBZQA","国寿安保尊利增强回报债券A","债券型","GUOSHOUANBAOZUNLIZENGQIANGHUIBAOZHAIQUANA"],["002721","GSABZLZQHBZQC","国寿安保尊利增强回报债券C","债券型","GUOSHOUANBAOZUNLIZENGQIANGHUIBAOZHAIQUANC"],["002722","GYCFHBB","工银财富货币B","货币型","GONGYINCAIFUHUOBIB"],["002723","JXQFA","江信祺福A","债券型","JIANGXINQIFUA"],["002724","JXQFC","江信祺福C","债券型","JIANGXINQIFUC"],["002725","ZOQRDCLZQ","中欧强瑞多策略债券","定开债券","ZHONGOUQIANGRUIDUOCELUEZHAIQUAN"],["002726","HFCXLHPZHHA","华富诚鑫灵活配置混合A","混合型","HUAFUCHENGXINLINGHUOPEIZHIHUNHEA"],["002727","HFCXLHPZHHC","华富诚鑫灵活配置混合C","混合型","HUAFUCHENGXINLINGHUOPEIZHIHUNHEC"],["002728","HFYXLHPZHHA","华富益鑫灵活配置混合A","混合型","HUAFUYIXINLINGHUOPEIZHIHUNHEA"],["002729","HFYXLHPZHHC","华富益鑫灵活配置混合C","混合型","HUAFUYIXINLINGHUOPEIZHIHUNHEC"],["002730","HFHXLHPZHHA","华富华鑫灵活配置混合A","混合型","HUAFUHUAXINLINGHUOPEIZHIHUNHEA"],["002731","HFHXLHPZHHC","华富华鑫灵活配置混合C","混合型","HUAFUHUAXINLINGHUOPEIZHIHUNHEC"],["002732","CSHGSHH","长盛沪港深混合","混合型","CHANGSHENGHUGANGSHENHUNHE"],["002733","SYHYLHB","上银慧盈利货币","货币型","SHANGYINHUIYINGLIHUOBI"],["002734","HDYRCZZQA","泓德裕荣纯债债券A","债券型","HONGDEYURONGCHUNZHAIZHAIQUANA"],["002735","HDYRCZZQC","泓德裕荣纯债债券C","债券型","HONGDEYURONGCHUNZHAIZHAIQUANC"],["002736","HDYHCZZQA","泓德裕和纯债债券A","债券型","HONGDEYUHECHUNZHAIZHAIQUANA"],["002737","HDYHCZZQC","泓德裕和纯债债券C","债券型","HONGDEYUHECHUNZHAIZHAIQUANC"],["002738","HDYKZQA","泓德裕康债券A","债券型","HONGDEYUKANGZHAIQUANA"],["002739","HDYKZQC","泓德裕康债券C","债券型","HONGDEYUKANGZHAIQUANC"],["002740","HDYZYNDKZQA","泓德裕泽一年定开债券A","定开债券","HONGDEYUZEYINIANDINGKAIZHAIQUANA"],["002741","HDYZYNDKZQC","泓德裕泽一年定开债券C","定开债券","HONGDEYUZEYINIANDINGKAIZHAIQUANC"],["002742","HDYXZQA","泓德裕祥债券A","债券型","HONGDEYUXIANGZHAIQUANA"],["002743","HDYXZQC","泓德裕祥债券C","债券型","HONGDEYUXIANGZHAIQUANC"],["002744","JSWFCZZQ","嘉实稳丰纯债债券","债券型","JIASHIWENFENGCHUNZHAIZHAIQUAN"],["002745","BXRFFLBB","北信瑞丰丰利保本","保本型","BEIXINRUIFENGFENGLIBAOBEN"],["002746","HTFDCLDKHH","汇添富多策略定开混合","混合型","HUITIANFUDUOCELUEDINGKAIHUNHE"],["002747","ZOHBC","中欧货币C","货币型","ZHONGOUHUOBIC"],["002748","ZOHBD","中欧货币D","货币型","ZHONGOUHUOBID"],["002749","JSWSZQ","嘉实稳盛债券","债券型","JIASHIWENSHENGZHAIQUAN"],["002750","GYTXSNLCZQ","工银泰享三年理财债券","定开债券","GONGYINTAIXIANGSANNIANLICAIZHAIQUAN"],["002751","BSAH18GYDKZA","博时安恒18个月定开债A","定开债券","BOSHIANHENG18GEYUEDINGKAIZHAIA"],["002752","BSAH18GYDKZC","博时安恒18个月定开债C","定开债券","BOSHIANHENG18GEYUEDINGKAIZHAIC"],["002753","JXJXBHBB","建信嘉薪宝货币B","货币型","JIANXINJIAXINBAOHUOBIB"],["002754","BSYCCZ","博时裕创纯债","债券型","BOSHIYUCHUANGCHUNZHAI"],["002755","BSYSCZZQ","博时裕盛纯债债券","债券型","BOSHIYUSHENGCHUNZHAIZHAIQUAN"],["002756","ZSZXCZA","招商招兴纯债A","债券型","ZHAOSHANGZHAOXINGCHUNZHAIA"],["002757","ZSZXCZC","招商招兴纯债C","债券型","ZHAOSHANGZHAOXINGCHUNZHAIC"],["002758","JXXJZLHB","建信现金增利货币","货币型","JIANXINXIANJINZENGLIHUOBI"],["002759","DXAYBA","东兴安盈宝A","货币型","DONGXINGANYINGBAOA"],["002760","DXAYBB","东兴安盈宝B","货币型","DONGXINGANYINGBAOB"],["002761","BSAY18GYA","博时安源18个月A","定开债券","BOSHIANYUAN18GEYUEA"],["002762","BSAY18GYC","博时安源18个月C","定开债券","BOSHIANYUAN18GEYUEC"],["002763","DCJHYNDKZA","大成景华一年定开债A","定开债券","DACHENGJINGHUAYINIANDINGKAIZHAIA"],["002764","DCJHYNDKZC","大成景华一年定开债C","定开债券","DACHENGJINGHUAYINIANDINGKAIZHAIC"],["002765","XHSLZQA","新华双利债券A","债券型","XINHUASHUANGLIZHAIQUANA"],["002766","XHSLZQC","新华双利债券C","债券型","XINHUASHUANGLIZHAIQUANC"],["002767","TKHTHBHH","泰康宏泰回报混合","混合型","TAIKANGHONGTAIHUIBAOHUNHE"],["002768","HAAJBBHH","华安安进保本混合","保本型","HUAANANJINBAOBENHUNHE"],["002769","XYJSLHPZHHC","兴业聚盛灵活配置混合C","混合型","XINGYEJUSHENGLINGHUOPEIZHIHUNHEC"],["002770","AXXHBHHA","安信新回报混合A","混合型","ANXINXINHUIBAOHUNHEA"],["002771","AXXHBHHC","安信新回报混合C","混合型","ANXINXINHUIBAOHUNHEC"],["002772","GDCYXDLHH","光大产业新动力混合","混合型","GUANGDACHANYEXINDONGLIHUNHE"],["002773","GDMXHHA","光大铭鑫混合A","混合型","GUANGDAMINGXINHUNHEA"],["002774","GDMXHHC","光大铭鑫混合C","混合型","GUANGDAMINGXINHUNHEC"],["002775","BSJXCZZQ","博时景兴纯债债券","债券型","BOSHIJINGXINGCHUNZHAIZHAIQUAN"],["002776","ZSARBBHHA","招商安荣保本混合A","保本型","ZHAOSHANGANRONGBAOBENHUNHEA"],["002777","ZSARBBHHC","招商安荣保本混合C","保本型","ZHAOSHANGANRONGBAOBENHUNHEC"],["002778","XJQHLHXSLHHA","新疆前海联合新思路混合A","混合型","XINJIANGQIANHAILIANHEXINSILUHUNHEA"],["002779","XJQHLHXSLHHC","新疆前海联合新思路混合C","混合型","XINJIANGQIANHAILIANHEXINSILUHUNHEC"],["002780","QHLHQMJKHH","前海联合全民健康混合","混合型","QIANHAILIANHEQUANMINJIANKANGHUNHE"],["002781","BSJRCZZQ","博时聚瑞纯债债券","债券型","BOSHIJURUICHUNZHAIZHAIQUAN"],["002782","FGXLDKZFQS","富国祥利定开债发起式","定开债券","FUGUOXIANGLIDINGKAIZHAIFAQISHI"],["002783","DFHJZJXHHA","东方红价值精选混合A","混合型","DONGFANGHONGJIAZHIJINGXUANHUNHEA"],["002784","DFHJZJXHHC","东方红价值精选混合C","混合型","DONGFANGHONGJIAZHIJINGXUANHUNHEC"],["002785","ZRRYSLZQA","中融融裕双利债券A","债券型","ZHONGRONGRONGYUSHUANGLIZHAIQUANA"],["002786","ZRRYSLZQC","中融融裕双利债券C","债券型","ZHONGRONGRONGYUSHUANGLIZHAIQUANC"],["002788","RTXJBHBA","融通现金宝货币A","货币型","RONGTONGXIANJINBAOHUOBIA"],["002789","CSTXBBHHA","长盛同享保本混合A","保本型","CHANGSHENGTONGXIANGBAOBENHUNHEA"],["002790","CSTXBBHHC","长盛同享保本混合C","保本型","CHANGSHENGTONGXIANGBAOBENHUNHEC"],["002791","RTTJLHPZHH","融通通景灵活配置混合","混合型","RONGTONGTONGJINGLINGHUOPEIZHIHUNHE"],["002792","JSCCSYHBHHA","景顺长城顺益回报混合A","混合型","JINGSHUNCHANGCHENGSHUNYIHUIBAOHUNHEA"],["002793","JSCCSYHBHHC","景顺长城顺益回报混合C","混合型","JINGSHUNCHANGCHENGSHUNYIHUIBAOHUNHEC"],["002794","THYLZQE","天弘永利债券E","债券型","TIANHONGYONGLIZHAIQUANE"],["002795","PADHHYCZ","平安大华惠盈纯债","债券型","PINGANDAHUAHUIYINGCHUNZHAI"],["002796","JSCCJYSLZQA","景顺长城景盈双利债券A","债券型","JINGSHUNCHANGCHENGJINGYINGSHUANGLIZHAIQUANA"],["002797","JSCCJYSLZQC","景顺长城景盈双利债券C","债券型","JINGSHUNCHANGCHENGJINGYINGSHUANGLIZHAIQUANC"],["002798","RTWLZQA","融通稳利债券A","债券型","RONGTONGWENLIZHAIQUANA"],["002801","HDHXHH","泓德泓信混合","混合型","HONGDEHONGXINHUNHE"],["002803","DFHHGSHH","东方红沪港深混合","混合型","DONGFANGHONGHUGANGSHENHUNHE"],["002804","HTBRLHDC","华泰柏瑞量化对冲","混合型","HUATAIBAIRUILIANGHUADUICHONG"],["002805","ZSHJJLYNDKZA","浙商汇金聚利一年定开债A","定开债券","ZHESHANGHUIJINJULIYINIANDINGKAIZHAIA"],["002806","ZSHJJLYNDKZC","浙商汇金聚利一年定开债C","定开债券","ZHESHANGHUIJINJULIYINIANDINGKAIZHAIC"],["002807","RTTAZQ","融通通安债券","债券型","RONGTONGTONGANZHAIQUAN"],["002808","HDYSLHHH","泓德优势领航混合","混合型","HONGDEYOUSHILINGHANGHUNHE"],["002809","PHXHDQKFHH","鹏华兴华定期开放混合","混合型","PENGHUAXINGHUADINGQIKAIFANGHUNHE"],["002810","JXZXCXCZHHFQS","金信转型创新成长混合发起式","混合型","JINXINZHUANXINGCHUANGXINCHENGZHANGHUNHEFAQISHI"],["002811","BSYSCZZQ","博时裕顺纯债债券","债券型","BOSHIYUSHUNCHUNZHAIZHAIQUAN"],["002812","BSYTCZZQC","博时裕通纯债债券C","债券型","BOSHIYUTONGCHUNZHAIZHAIQUANC"],["002813","BSBTBBA","博时保泰保本A","保本型","BOSHIBAOTAIBAOBENA"],["002814","BSBTBBC","博时保泰保本C","保本型","BOSHIBAOTAIBAOBENC"],["002815","ZSZYLNDKZA","招商招益两年定开债A","定开债券","ZHAOSHANGZHAOYILIANGNIANDINGKAIZHAIA"],["002816","ZSZYLNDKZC","招商招益两年定开债C","定开债券","ZHAOSHANGZHAOYILIANGNIANDINGKAIZHAIC"],["002817","ZSZHCZA","招商招恒纯债A","债券型","ZHAOSHANGZHAOHENGCHUNZHAIA"],["002818","ZSZHCZC","招商招恒纯债C","债券型","ZHAOSHANGZHAOHENGCHUNZHAIC"],["002819","ZSFMHHA","招商丰美混合A","混合型","ZHAOSHANGFENGMEIHUNHEA"],["002820","ZSFMHHC","招商丰美混合C","混合型","ZHAOSHANGFENGMEIHUNHEC"],["002821","ZSFLLHPZHHA","招商丰乐灵活配置混合A","混合型","ZHAOSHANGFENGLELINGHUOPEIZHIHUNHEA"],["002822","ZSFLLHPZHHC","招商丰乐灵活配置混合C","混合型","ZHAOSHANGFENGLELINGHUOPEIZHIHUNHEC"],["002823","ZSSDHHA","招商盛达混合A","混合型","ZHAOSHANGSHENGDAHUNHEA"],["002824","ZSSDHHC","招商盛达混合C","混合型","ZHAOSHANGSHENGDAHUNHEC"],["002825","RTTHZQ","融通通和债券","债券型","RONGTONGTONGHEZHAIQUAN"],["002826","ZYYLBNDKZ","中银永利半年定开债","定开债券","ZHONGYINYONGLIBANNIANDINGKAIZHAI"],["002827","RTWLZQC","融通稳利债券C","债券型","RONGTONGWENLIZHAIQUANC"],["002828","NFXJZLHBE","南方现金增利货币E","货币型","NANFANGXIANJINZENGLIHUOBIE"],["002829","NFXJZLHBF","南方现金增利货币F","货币型","NANFANGXIANJINZENGLIHUOBIF"],["002830","ZSHFDKZ","浙商惠丰定开债","定开债券","ZHESHANGHUIFENGDINGKAIZHAI"],["002831","GTRYRNHH","国投瑞银瑞宁混合","混合型","GUOTOURUIYINRUININGHUNHE"],["002832","GYHXCZZQ","工银恒享纯债债券","债券型","GONGYINHENGXIANGCHUNZHAIZHAIQUAN"],["002833","HXXJXHHA","华夏新锦绣混合A","混合型","HUAXIAXINJINXIUHUNHEA"],["002834","HXXJXHHC","华夏新锦绣混合C","混合型","HUAXIAXINJINXIUHUNHEC"],["002835","HXXJTHHA","华夏新锦泰混合A","混合型","HUAXIAXINJINTAIHUNHEA"],["002836","HXXJTHHC","华夏新锦泰混合C","混合型","HUAXIAXINJINTAIHUNHEC"],["002837","HXWGJXHH","华夏网购精选混合","混合型","HUAXIAWANGGOUJINGXUANHUNHE"],["002838","HXXJCHHA","华夏新锦程混合A","混合型","HUAXIAXINJINCHENGHUNHEA"],["002839","HXXJCHHC","华夏新锦程混合C","混合型","HUAXIAXINJINCHENGHUNHEC"],["002840","JTJXZQA","九泰久鑫债券A","债券型","JIUTAIJIUXINZHAIQUANA"],["002841","JTJXZQC","九泰久鑫债券C","债券型","JIUTAIJIUXINZHAIQUANC"],["002842","JSCCJYJLZQA","景顺长城景盈金利债券A","债券型","JINGSHUNCHANGCHENGJINGYINGJINLIZHAIQUANA"],["002843","JSCCJYJLZQC","景顺长城景盈金利债券C","债券型","JINGSHUNCHANGCHENGJINGYINGJINLIZHAIQUANC"],["002844","JYDYCLHH","金鹰多元策略混合","混合型","JINYINGDUOYUANCELUEHUNHE"],["002845","STMGAXHBC","上投摩根安鑫回报C","混合型","SHANGTOUMOGENANXINHUIBAOC"],["002846","HDHHHH","泓德泓华混合","混合型","HONGDEHONGHUAHUNHE"],["002847","THXJGJHBE","天弘现金管家货币E","货币型","TIANHONGXIANJINGUANJIAHUOBIE"],["002848","NYCZDKZ","农银纯债定开债","定开债券","NONGYINCHUNZHAIDINGKAIZHAI"],["002849","JXZNZG2025HH","金信智能中国2025混合","混合型","JINXINZHINENGZHONGGUO2025HUNHE"],["002850","NFZZHH","南方甑智混合","混合型","NANFANGZENGZHIHUNHE"],["002851","NFPZHH","南方品质混合","混合型","NANFANGPINZHIHUNHE"],["002852","ZSCFBJYXHBA","招商财富宝交易型货币A","货币型","ZHAOSHANGCAIFUBAOJIAOYIXINGHUOBIA"],["002853","HFYXLHPZHHA","华富元鑫灵活配置混合A","混合型","HUAFUYUANXINLINGHUOPEIZHIHUNHEA"],["002854","HFYXLHPZHHC","华富元鑫灵活配置混合C","混合型","HUAFUYUANXINLINGHUOPEIZHIHUNHEC"],["002855","BSXJBHBC","博时现金宝货币C","货币型","BOSHIXIANJINBAOHUOBIC"],["002856","BSBFBBA","博时保丰保本A","保本型","BOSHIBAOFENGBAOBENA"],["002857","BSBFBBC","博时保丰保本C","保本型","BOSHIBAOFENGBAOBENC"],["002858","CXFPCZYNDKZA","长信富平纯债一年定开债A","定开债券","CHANGXINFUPINGCHUNZHAIYINIANDINGKAIZHAIA"],["002859","CXFPCZYNDKZC","长信富平纯债一年定开债C","定开债券","CHANGXINFUPINGCHUNZHAIYINIANDINGKAIZHAIC"],["002860","QHKYHGSXJYHH","前海开源沪港深新机遇混合","混合型","QIANHAIKAIYUANHUGANGSHENXINJIYUHUNHE"],["002862","JXLHJXHH","金信量化精选混合","混合型","JINXINLIANGHUAJINGXUANHUNHE"],["002863","JXSZCZHHFQS","金信深圳成长混合发起式","混合型","JINXINSHENZHENCHENGZHANGHUNHEFAQISHI"],["002864","GFAZHBCZA","广发安泽回报纯债A","债券型","GUANGFAANZEHUIBAOCHUNZHAIA"],["002865","GFAZHBCZC","广发安泽回报纯债C","债券型","GUANGFAANZEHUIBAOCHUNZHAIC"],["002866","XHFYHBZQ","新华丰盈回报债券","债券型","XINHUAFENGYINGHUIBAOZHAIQUAN"],["002867","XHHWTLZQ","新华恒稳添利债券","债券型","XINHUAHENGWENTIANLIZHAIQUAN"],["002868","PHFMZQ","鹏华丰茂债券","债券型","PENGHUAFENGMAOZHAIQUAN"],["002869","RTTYZQ","融通通裕债券","债券型","RONGTONGTONGYUZHAIQUAN"],["002870","XYZYWNDKZ","兴业增益五年定开债","定开债券","XINGYEZENGYIWUNIANDINGKAIZHAI"],["002871","HXXJYHHA","华夏新锦源混合A","混合型","HUAXIAXINJINYUANHUNHEA"],["002872","HXXJYHHC","华夏新锦源混合C","混合型","HUAXIAXINJINYUANHUNHEC"],["002873","HXXJFHHA","华夏新锦福混合A","混合型","HUAXIAXINJINFUHUNHEA"],["002874","HXXJFHHC","华夏新锦福混合C","混合型","HUAXIAXINJINFUHUNHEC"],["002875","HXXJAHHA","华夏新锦安混合A","混合型","HUAXIAXINJINANHUNHEA"],["002876","HXXJAHHC","华夏新锦安混合C","混合型","HUAXIAXINJINANHUNHEC"],["002877","HXDZHXYZA","华夏大中华信用债A","QDII","HUAXIADAZHONGHUAXINYONGZHAIA"],["002878","HXDZHXYZMYXHA","华夏大中华信用债美元现汇A","QDII","HUAXIADAZHONGHUAXINYONGZHAIMEIYUANXIANHUIA"],["002879","HXDZHXYZMYXCA","华夏大中华信用债美元现钞A","QDII","HUAXIADAZHONGHUAXINYONGZHAIMEIYUANXIANCHAOA"],["002880","HXDZHXYZC","华夏大中华信用债C","QDII","HUAXIADAZHONGHUAXINYONGZHAIC"],["002881","ZJFRCZZQA","中加丰润纯债债券A","债券型","ZHONGJIAFENGRUNCHUNZHAIZHAIQUANA"],["002882","ZJFRCZZQC","中加丰润纯债债券C","债券型","ZHONGJIAFENGRUNCHUNZHAIZHAIQUANC"],["002883","HRYDXJTHBA","华润元大现金通货币A","货币型","HUARUNYUANDAXIANJINTONGHUOBIA"],["002884","HRYDXJTHBB","华润元大现金通货币B","货币型","HUARUNYUANDAXIANJINTONGHUOBIB"],["002887","MSJYXRZQA","民生加银鑫瑞债券A","债券型","MINSHENGJIAYINXINRUIZHAIQUANA"],["002888","MSJYXRZQC","民生加银鑫瑞债券C","债券型","MINSHENGJIAYINXINRUIZHAIQUANC"],["002889","JYTLBHBA","交银天利宝货币A","货币型","JIAOYINTIANLIBAOHUOBIA"],["002890","JYTLBHBE","交银天利宝货币E","货币型","JIAOYINTIANLIBAOHUOBIE"],["002891","HXYDHLHHRMB","华夏移动互联混合人民币","QDII","HUAXIAYIDONGHULIANHUNHERENMINBI"],["002892","HXYDHLHHMYXH","华夏移动互联混合美元现汇","QDII","HUAXIAYIDONGHULIANHUNHEMEIYUANXIANHUI"],["002893","HXYDHLHHMYXC","华夏移动互联混合美元现钞","QDII","HUAXIAYIDONGHULIANHUNHEMEIYUANXIANCHAO"],["002894","HXTLHBA","华夏天利货币A","货币型","HUAXIATIANLIHUOBIA"],["002895","HXTLHBB","华夏天利货币B","货币型","HUAXIATIANLIHUOBIB"],["002896","DFZXZQA","东方臻馨债券A","债券型","DONGFANGZHENXINZHAIQUANA"],["002897","DFZXZQC","东方臻馨债券C","债券型","DONGFANGZHENXINZHAIQUANC"],["002898","FGLNQLCZQA","富国两年期理财债券A","定开债券","FUGUOLIANGNIANQILICAIZHAIQUANA"],["002899","FGLNQLCZQC","富国两年期理财债券C","定开债券","FUGUOLIANGNIANQILICAIZHAIQUANC"],["002900","NFZZ500XXJSLJA","南方中证500信息技术联接A","联接基金","NANFANGZHONGZHENG500XINXIJISHULIANJIEA"],["002901","CTZGJJSYZQA","财通资管积极收益债券A","债券型","CAITONGZIGUANJIJISHOUYIZHAIQUANA"],["002902","CTZGJJSYZQC","财通资管积极收益债券C","债券型","CAITONGZIGUANJIJISHOUYIZHAIQUANC"],["002903","GFZZ500ETFLJC","广发中证500ETF联接C","联接基金","GUANGFAZHONGZHENG500ETFLIANJIEC"],["002904","BSARYNDKZA","博时安仁一年定开债A","定开债券","BOSHIANRENYINIANDINGKAIZHAIA"],["002905","BSARYNDKZC","博时安仁一年定开债C","定开债券","BOSHIANRENYINIANDINGKAIZHAIC"],["002906","NFZZ500LHZQA","南方中证500量化增强A","股票指数","NANFANGZHONGZHENG500LIANGHUAZENGQIANGA"],["002907","NFZZ500LHZQC","南方中证500量化增强C","股票指数","NANFANGZHONGZHENG500LIANGHUAZENGQIANGC"],["002908","FGRLDKHHFQS","富国睿利定开混合发起式","混合型","FUGUORUILIDINGKAIHUNHEFAQISHI"],["002909","ZSHXCZ","浙商惠享纯债","债券型","ZHESHANGHUIXIANGCHUNZHAI"],["002910","YFDGGGGHH","易方达供给改革混合","混合型","YIFANGDAGONGGEIGAIGEHUNHE"],["002911","PHXSDQKFHH","鹏华兴实定期开放混合","混合型","PENGHUAXINGSHIDINGQIKAIFANGHUNHE"],["002912","XYWTYHB","兴业稳天盈货币","货币型","XINGYEWENTIANYINGHUOBI"],["002913","PHXYDQKFHH","鹏华兴益定期开放混合","混合型","PENGHUAXINGYIDINGQIKAIFANGHUNHE"],["002914","PHXRDQKFHH","鹏华兴锐定期开放混合","混合型","PENGHUAXINGRUIDINGQIKAIFANGHUNHE"],["002915","XYYLZQ","鑫元裕利债券","债券型","XINYUANYULIZHAIQUAN"],["002916","ZYZXBNDKZ","中银尊享半年定开债","定开债券","ZHONGYINZUNXIANGBANNIANDINGKAIZHAI"],["002917","JSHQBHBE","嘉实活钱包货币E","货币型","JIASHIHUOQIANBAOHUOBIE"],["002918","JYXJBHBE","交银现金宝货币E","货币型","JIAOYINXIANJINBAOHUOBIE"],["002919","DWZHYLLHCLHH","东吴智慧医疗量化策略混合","混合型","DONGWUZHIHUIYILIAOLIANGHUACELUEHUNHE"],["002920","ZOQZZQ","中欧强泽债券","债券型","ZHONGOUQIANGZEZHAIQUAN"],["002921","CJHXZYCZ","创金合信尊誉纯债","债券型","CHUANGJINHEXINZUNYUCHUNZHAI"],["002922","RTZFZQ","融通增丰债券","债券型","RONGTONGZENGFENGZHAIQUAN"],["002923","XYJHLHPZHHC","兴业聚惠灵活配置混合C","混合型","XINGYEJUHUILINGHUOPEIZHIHUNHEC"],["002924","HSRXDKZ","华商瑞鑫定开债","定开债券","HUASHANGRUIXINDINGKAIZHAI"],["002925","GFJYZQA","广发集源债券A","债券型","GUANGFAJIYUANZHAIQUANA"],["002926","GFJYZQC","广发集源债券C","债券型","GUANGFAJIYUANZHAIQUANC"],["002927","CSSHCZA","长盛盛和纯债A","债券型","CHANGSHENGSHENGHECHUNZHAIA"],["002928","CSSHCZC","长盛盛和纯债C","债券型","CHANGSHENGSHENGHECHUNZHAIC"],["002929","BSJYCZZQ","博时聚盈纯债债券","债券型","BOSHIJUYINGCHUNZHAIZHAIQUAN"],["002930","BSJRCZZQ","博时聚润纯债债券","债券型","BOSHIJURUNCHUNZHAIZHAIQUAN"],["002931","NFRY","南方荣毅","混合型","NANFANGRONGYI"],["002932","YXYFQHSYA","圆信永丰强化收益A","债券型","YUANXINYONGFENGQIANGHUASHOUYIA"],["002933","YXYFQHSYC","圆信永丰强化收益C","债券型","YUANXINYONGFENGQIANGHUASHOUYIC"],["002934","TKHTHBHHA","泰康恒泰回报混合A","混合型","TAIKANGHENGTAIHUIBAOHUNHEA"],["002935","TKHTHBHHC","泰康恒泰回报混合C","混合型","TAIKANGHENGTAIHUIBAOHUNHEC"],["002936","HXWLHBA","华夏沃利货币A","货币型","HUAXIAWOLIHUOBIA"],["002937","HXWLHBB","华夏沃利货币B","货币型","HUAXIAWOLIHUOBIB"],["002938","ZYJKCYHH","中银健康产业混合","混合型","ZHONGYINJIANKANGCHANYEHUNHE"],["002939","GFCXSJHH","广发创新升级混合","混合型","GUANGFACHUANGXINSHENGJIHUNHE"],["002940","ZOQHZQ","中欧强惠债券","债券型","ZHONGOUQIANGHUIZHAIQUAN"],["002941","GFARHBHHA","广发安瑞回报混合A","混合型","GUANGFAANRUIHUIBAOHUNHEA"],["002942","GFARHBHHC","广发安瑞回报混合C","混合型","GUANGFAANRUIHUIBAOHUNHEC"],["002943","GFDYZHH","广发多因子混合","混合型","GUANGFADUOYINZIHUNHE"],["002944","XCZTLDLHPZHH","信诚主题轮动灵活配置混合","混合型","XINCHENGZHUTILUNDONGLINGHUOPEIZHIHUNHE"],["002946","DCJSYNDKZA","大成景盛一年定开债A","定开债券","DACHENGJINGSHENGYINIANDINGKAIZHAIA"],["002947","DCJSYNDKZC","大成景盛一年定开债C","定开债券","DACHENGJINGSHENGYINIANDINGKAIZHAIC"],["002948","HAJL18GYDKZA","华安聚利18个月定开债A","定开债券","HUAANJULI18GEYUEDINGKAIZHAIA"],["002949","HAJL18GYDKZC","华安聚利18个月定开债C","定开债券","HUAANJULI18GEYUEDINGKAIZHAIC"],["002952","JXDYZLHGP","建信多因子量化股票","股票型","JIANXINDUOYINZILIANGHUAGUPIAO"],["002953","HAAFBBHHA","华安安福保本混合A","保本型","HUAANANFUBAOBENHUNHEA"],["002954","HAAFBBHHC","华安安福保本混合C","保本型","HUAANANFUBAOBENHUNHEC"],["002955","RTXQSLHPZHH","融通新趋势灵活配置混合","混合型","RONGTONGXINQUSHILINGHUOPEIZHIHUNHE"],["002956","RTXQSLHPZHH","融通新趋势灵活配置混合(后端)","混合型","RONGTONGXINQUSHILINGHUOPEIZHIHUNHE"],["002957","CTCTBHBA","财通财通宝货币A","货币型","CAITONGCAITONGBAOHUOBIA"],["002958","CTCTBHBB","财通财通宝货币B","货币型","CAITONGCAITONGBAOHUOBIB"],["002959","HTFYWBBHH","汇添富盈稳保本混合","保本型","HUITIANFUYINGWENBAOBENHUNHE"],["002960","BSHLHB","博时合利货币","货币型","BOSHIHELIHUOBI"],["002961","ZOSLZQA","中欧双利债券A","债券型","ZHONGOUSHUANGLIZHAIQUANA"],["002962","ZOSLZQC","中欧双利债券C","债券型","ZHONGOUSHUANGLIZHAIQUANC"],["002963","YFDHJETFLJC","易方达黄金ETF联接C","联接基金","YIFANGDAHUANGJINETFLIANJIEC"],["002964","GTRYSXYNZQ","国投瑞银顺鑫一年债券","定开债券","GUOTOURUIYINSHUNXINYINIANZHAIQUAN"],["002965","ZHHJZQSYZQA","中海合嘉增强收益债券A","债券型","ZHONGHAIHEJIAZENGQIANGSHOUYIZHAIQUANA"],["002966","ZHHJZQSYZQC","中海合嘉增强收益债券C","债券型","ZHONGHAIHEJIAZENGQIANGSHOUYIZHAIQUANC"],["002967","ZSDSJZXXFHH","浙商大数据智选消费混合","混合型","ZHESHANGDASHUJUZHIXUANXIAOFEIHUNHE"],["002969","YFDFHZQ","易方达丰和债券","债券型","YIFANGDAFENGHEZHAIQUAN"],["002970","BSYACZZQ","博时裕昂纯债债券","债券型","BOSHIYUANGCHUNZHAIZHAIQUAN"],["002971","QHKYDAZQA","前海开源鼎安债券A","债券型","QIANHAIKAIYUANDINGANZHAIQUANA"],["002972","QHKYDAZQC","前海开源鼎安债券C","债券型","QIANHAIKAIYUANDINGANZHAIQUANC"],["002973","GFZZQZNYETFLJC","广发中证全指能源ETF联接C","联接基金","GUANGFAZHONGZHENGQUANZHINENGYUANETFLIANJIEC"],["002974","GFXXJSLJC","广发信息技术联接C","联接基金","GUANGFAXINXIJISHULIANJIEC"],["002975","GFZZQZYCLLJC","广发中证全指原材料联接C","联接基金","GUANGFAZHONGZHENGQUANZHIYUANCAILIAOLIANJIEC"],["002976","GFZZQZZYXFLJC","广发中证全指主要消费联接C","联接基金","GUANGFAZHONGZHENGQUANZHIZHUYAOXIAOFEILIANJIEC"],["002977","GFZZQZKXXFLJC","广发中证全指可选消费联接C","联接基金","GUANGFAZHONGZHENGQUANZHIKEXUANXIAOFEILIANJIEC"],["002978","GFYYWSLJC","广发医药卫生联接C","联接基金","GUANGFAYIYAOWEISHENGLIANJIEC"],["002979","GFZZQZJRDCLJC","广发中证全指金融地产联接C","联接基金","GUANGFAZHONGZHENGQUANZHIJINRONGDECHANLIANJIEC"],["002980","HXCXQYGP","华夏创新前沿股票","股票型","HUAXIACHUANGXINQIANYANGUPIAO"],["002982","GFYLZSC","广发养老指数C","股票指数","GUANGFAYANGLAOZHISHUC"],["002983","CXGFJGLHHH","长信国防军工量化混合","混合型","CHANGXINGUOFANGJUNGONGLIANGHUAHUNHE"],["002984","GFHBZSC","广发环保指数C","股票指数","GUANGFAHUANBAOZHISHUC"],["002985","ZYJJHDKZ","中银季季红定开债","定开债券","ZHONGYINJIJIHONGDINGKAIZHAI"],["002986","TKFYZQ","泰康丰盈债券","债券型","TAIKANGFENGYINGZHAIQUAN"],["002987","GFHS300ETFLJC","广发沪深300ETF联接C","联接基金","GUANGFAHUSHEN300ETFLIANJIEC"],["002988","PADHDXDKZ","平安大华鼎信定开债","定开债券","PINGANDAHUADINGXINDINGKAIZHAI"],["002989","RTTQYJJXHH","融通通乾研究精选混合","混合型","RONGTONGTONGGANYANJIUJINGXUANHUNHE"],["002991","JSWXCZZQ","嘉实稳鑫纯债债券","债券型","JIASHIWENXINCHUNZHAIZHAIQUAN"],["002992","ZSZYCZA","招商招元纯债A","债券型","ZHAOSHANGZHAOYUANCHUNZHAIA"],["002993","ZSZYCZC","招商招元纯债C","债券型","ZHAOSHANGZHAOYUANCHUNZHAIC"],["002994","ZSZYCZA","招商招裕纯债A","债券型","ZHAOSHANGZHAOYUCHUNZHAIA"],["002995","ZSZYCZC","招商招裕纯债C","债券型","ZHAOSHANGZHAOYUCHUNZHAIC"],["002996","CXWJCZZQ","长信稳健纯债债券","债券型","CHANGXINWENJIANCHUNZHAIZHAIQUAN"],["002997","GYRXCZZQ","工银瑞享纯债债券","债券型","GONGYINRUIXIANGCHUNZHAIZHAIQUAN"],["002998","BSHY18GYDKZA","博时弘裕18个月定开债A","定开债券","BOSHIHONGYU18GEYUEDINGKAIZHAIA"],["002999","BSHY18GYDKZC","博时弘裕18个月定开债C","定开债券","BOSHIHONGYU18GEYUEDINGKAIZHAIC"],["003000","ZSFDLHPZHHA","招商丰德灵活配置混合A","混合型","ZHAOSHANGFENGDELINGHUOPEIZHIHUNHEA"],["003001","ZSFDLHPZHHC","招商丰德灵活配置混合C","混合型","ZHAOSHANGFENGDELINGHUOPEIZHIHUNHEC"],["003002","GJJDQTLC","国金及第七天理财","理财型","GUOJINJIDIQITIANLICAI"],["003003","HXXJZLHBAE","华夏现金增利货币A/E","货币型","HUAXIAXIANJINZENGLIHUOBIAE"],["003004","ZSRXDKHH","招商睿祥定开混合","混合型","ZHAOSHANGRUIXIANGDINGKAIHUNHE"],["003005","HXDYZQA","华夏鼎益债券A","债券型","HUAXIADINGYIZHAIQUANA"],["003006","HXDYZQI","华夏鼎益债券I","债券型","HUAXIADINGYIZHAIQUANI"],["003009","ZRYZZQA","中融盈泽债券A","债券型","ZHONGRONGYINGZEZHAIQUANA"],["003010","ZRYZZQC","中融盈泽债券C","债券型","ZHONGRONGYINGZEZHAIQUANC"],["003011","ZRYRZQA","中融盈润债券A","债券型","ZHONGRONGYINGRUNZHAIQUANA"],["003012","ZRYRZQC","中融盈润债券C","债券型","ZHONGRONGYINGRUNZHAIQUANC"],["003013","ZRHTCZA","中融恒泰纯债A","债券型","ZHONGRONGHENGTAICHUNZHAIA"],["003014","ZRHTCZC","中融恒泰纯债C","债券型","ZHONGRONGHENGTAICHUNZHAIC"],["003015","ZJHS300A","中金沪深300A","股票指数","ZHONGJINHUSHEN300A"],["003016","ZJZZ500A","中金中证500A","股票指数","ZHONGJINZHONGZHENG500A"],["003017","GFZZJGETFLJ","广发中证军工ETF联接","联接基金","GUANGFAZHONGZHENGJUNGONGETFLIANJIE"],["003021","ZOQYZQ","中欧强裕债券","债券型","ZHONGOUQIANGYUZHAIQUAN"],["003022","JXXJTYHBA","建信现金添益货币A","货币型","JIANXINXIANJINTIANYIHUOBIA"],["003023","BSJFCZZQ","博时景发纯债债券","债券型","BOSHIJINGFACHUNZHAIZHAIQUAN"],["003024","PADHHJDKZ","平安大华惠金定开债","定开债券","PINGANDAHUAHUIJINDINGKAIZHAI"],["003025","XHHLHBHH","新华红利回报混合","混合型","XINHUAHONGLIHUIBAOHUNHE"],["003026","AXXJZHHA","安信新价值混合A","混合型","ANXINXINJIAZHIHUNHEA"],["003027","AXXJZHHC","安信新价值混合C","混合型","ANXINXINJIAZHIHUNHEC"],["003028","AXXYXHHA","安信新优选混合A","混合型","ANXINXINYOUXUANHUNHEA"],["003029","AXXYXHHC","安信新优选混合C","混合型","ANXINXINYOUXUANHUNHEC"],["003030","AXXMBHHA","安信新目标混合A","混合型","ANXINXINMUBIAOHUNHEA"],["003031","AXXMBHHC","安信新目标混合C","混合型","ANXINXINMUBIAOHUNHEC"],["003033","NFRGDKHH","南方荣冠定开混合","混合型","NANFANGRONGGUANDINGKAIHUNHE"],["003034","PADHJYXHBA","平安大华交易型货币A","货币型","PINGANDAHUAJIAOYIXINGHUOBIA"],["003035","GFAXHBHHA","广发安祥回报混合A","混合型","GUANGFAANXIANGHUIBAOHUNHEA"],["003036","GFAXHBHHC","广发安祥回报混合C","混合型","GUANGFAANXIANGHUIBAOHUNHEC"],["003037","GFJRZQA","广发集瑞债券A","债券型","GUANGFAJIRUIZHAIQUANA"],["003038","GFJRZQC","广发集瑞债券C","债券型","GUANGFAJIRUIZHAIQUANC"],["003039","GFJFCZA","广发集富纯债A","债券型","GUANGFAJIFUCHUNZHAIA"],["003040","GFJFCZC","广发集富纯债C","债券型","GUANGFAJIFUCHUNZHAIC"],["003041","XYDLZQ","鑫元得利债券","债券型","XINYUANDELIZHAIQUAN"],["003042","JYHQTHBA","交银活期通货币A","货币型","JIAOYINHUOQITONGHUOBIA"],["003043","JYHQTHBE","交银活期通货币E","货币型","JIAOYINHUOQITONGHUOBIE"],["003044","DFHZLJXHHA","东方红战略精选混合A","混合型","DONGFANGHONGZHANLUEJINGXUANHUNHEA"],["003045","DFHZLJXHHC","东方红战略精选混合C","混合型","DONGFANGHONGZHANLUEJINGXUANHUNHEC"],["003046","ZSXYDKZRMB","招商信用定开债人民币","QDII","ZHAOSHANGXINYONGDINGKAIZHAIRENMINBI"],["003047","ZSXYDKZMY","招商信用定开债美元","QDII","ZHAOSHANGXINYONGDINGKAIZHAIMEIYUAN"],["003048","MSJYXYZA","民生加银鑫盈债A","债券型","MINSHENGJIAYINXINYINGZHAIA"],["003049","MSJYXYZC","民生加银鑫盈债C","债券型","MINSHENGJIAYINXINYINGZHAIC"],["003050","NYHLJFYNDKZ","农银汇理金丰一年定开债","定开债券","NONGYINHUILIJINFENGYINIANDINGKAIZHAI"],["003051","NYHLJLYNDKZ","农银汇理金利一年定开债","定开债券","NONGYINHUILIJINLIYINIANDINGKAIZHAI"],["003053","JSWTYLGPA","嘉实文体娱乐股票A","股票型","JIASHIWENTIYULEGUPIAOA"],["003054","JSWTYLGPC","嘉实文体娱乐股票C","股票型","JIASHIWENTIYULEGUPIAOC"],["003055","BSZCEHBB","博时招财二号保本","保本型","BOSHIZHAOCAIERHAOBAOBEN"],["003056","JSWZCZZQ","嘉实稳泽纯债债券","债券型","JIASHIWENZECHUNZHAIZHAIQUAN"],["003057","JXRSTLHHA","建信瑞盛添利混合A","混合型","JIANXINRUISHENGTIANLIHUNHEA"],["003058","JXRSTLHHC","建信瑞盛添利混合C","混合型","JIANXINRUISHENGTIANLIHUNHEC"],["003059","CXXLBNDQKFHH","长信先利半年定期开放混合","混合型","CHANGXINXIANLIBANNIANDINGQIKAIFANGHUNHE"],["003062","YHTLHHA","银华通利混合A","混合型","YINHUATONGLIHUNHEA"],["003063","YHTLHHC","银华通利混合C","混合型","YINHUATONGLIHUNHEC"],["003064","NFRHHH","南方荣欢混合","混合型","NANFANGRONGHUANHUNHE"],["003073","TDHLHLZQA","泰达宏利汇利债券A","债券型","TAIDAHONGLIHUILIZHAIQUANA"],["003074","TDHLHLZQC","泰达宏利汇利债券C","债券型","TAIDAHONGLIHUILIZHAIQUANC"],["003075","ZRHBE","中融货币E","货币型","ZHONGRONGHUOBIE"],["003078","TKAHCZZQ","泰康安惠纯债债券","债券型","TAIKANGANHUICHUNZHAIZHAIQUAN"],["003079","ZR35NZGDJXYZA","中融3-5年中高等级信用债A","债券指数","ZHONGRONG35NIANZHONGGAODENGJIXINYONGZHAIA"],["003080","ZR35NZGDJXYZC","中融3-5年中高等级信用债C","债券指数","ZHONGRONG35NIANZHONGGAODENGJIXINYONGZHAIC"],["003081","ZR13NZGDJXYZA","中融1-3年中高等级信用债A","债券指数","ZHONGRONG13NIANZHONGGAODENGJIXINYONGZHAIA"],["003082","ZR13NZGDJXYZC","中融1-3年中高等级信用债C","债券指数","ZHONGRONG13NIANZHONGGAODENGJIXINYONGZHAIC"],["003083","ZR13NGDJXYZA","中融1-3年高等级信用债A","债券指数","ZHONGRONG13NIANGAODENGJIXINYONGZHAIA"],["003084","ZR13NGDJXYZC","中融1-3年高等级信用债C","债券指数","ZHONGRONG13NIANGAODENGJIXINYONGZHAIC"],["003085","ZR01NZGDJXYZA","中融0-1年中高等级信用债A","债券指数","ZHONGRONG01NIANZHONGGAODENGJIXINYONGZHAIA"],["003086","ZR01NZGDJXYZC","中融0-1年中高等级信用债C","债券指数","ZHONGRONG01NIANZHONGGAODENGJIXINYONGZHAIC"],["003087","STMGSSFDKZQA","上投摩根岁岁丰定开债券A","定开债券","SHANGTOUMOGENSUISUIFENGDINGKAIZHAIQUANA"],["003088","STMGSSFDKZQC","上投摩根岁岁丰定开债券C","定开债券","SHANGTOUMOGENSUISUIFENGDINGKAIZHAIQUANC"],["003089","ZRHRCZA","中融恒瑞纯债A","债券型","ZHONGRONGHENGRUICHUNZHAIA"],["003090","ZRHRCZC","中融恒瑞纯债C","债券型","ZHONGRONGHENGRUICHUNZHAIC"],["003091","ZOQLZQ","中欧强利债券","债券型","ZHONGOUQIANGLIZHAIQUAN"],["003092","HSFLZQDKZA","华商丰利增强定开债A","定开债券","HUASHANGFENGLIZENGQIANGDINGKAIZHAIA"],["003093","HSFLZQDKZC","华商丰利增强定开债C","定开债券","HUASHANGFENGLIZENGQIANGDINGKAIZHAIC"],["003094","DMDYXL18GYDKZ","大摩多元兴利18个月定开债","定开债券","DAMODUOYUANXINGLI18GEYUEDINGKAIZHAI"],["003095","ZOYLJKHHA","中欧医疗健康混合A","混合型","ZHONGOUYILIAOJIANKANGHUNHEA"],["003096","ZOYLJKHHC","中欧医疗健康混合C","混合型","ZHONGOUYILIAOJIANKANGHUNHEC"],["003097","DBDH9GYDKZA","德邦德焕9个月定开债A","定开债券","DEBANGDEHUAN9GEYUEDINGKAIZHAIA"],["003098","DBDH9GYDKZC","德邦德焕9个月定开债C","定开债券","DEBANGDEHUAN9GEYUEDINGKAIZHAIC"],["003099","CSSJCZA","长盛盛景纯债A","债券型","CHANGSHENGSHENGJINGCHUNZHAIA"],["003100","CSSJCZC","长盛盛景纯债C","债券型","CHANGSHENGSHENGJINGCHUNZHAIC"],["003101","NDTXZQ","诺德天禧债券","债券型","NUODETIANXIZHAIQUAN"],["003102","CSSYCZA","长盛盛裕纯债A","债券型","CHANGSHENGSHENGYUCHUNZHAIA"],["003103","CSSYCZC","长盛盛裕纯债C","债券型","CHANGSHENGSHENGYUCHUNZHAIC"],["003104","TDHLDHHH","泰达宏利定宏混合","混合型","TAIDAHONGLIDINGHONGHUNHE"],["003105","GDYXHHA","光大永鑫混合A","混合型","GUANGDAYONGXINHUNHEA"],["003106","GDYXHHC","光大永鑫混合C","混合型","GUANGDAYONGXINHUNHEC"],["003107","GDBDXAQZQA","光大保德信安祺债券A","债券型","GUANGDABAODEXINANQIZHAIQUANA"],["003108","GDBDXAQZQC","光大保德信安祺债券C","债券型","GUANGDABAODEXINANQIZHAIQUANC"],["003109","GDAHZQA","光大安和债券A","债券型","GUANGDAANHEZHAIQUANA"],["003110","GDAHZQC","光大安和债券C","债券型","GUANGDAANHEZHAIQUANC"],["003115","GDBDXCXHHA","光大保德信诚鑫混合A","混合型","GUANGDABAODEXINCHENGXINHUNHEA"],["003116","GDBDXCXHHC","光大保德信诚鑫混合C","混合型","GUANGDABAODEXINCHENGXINHUNHEC"],["003117","GDJXHHA","光大吉鑫混合A","混合型","GUANGDAJIXINHUNHEA"],["003118","GDJXHHC","光大吉鑫混合C","混合型","GUANGDAJIXINHUNHEC"],["003119","BSXYHHA","博时鑫源混合A","混合型","BOSHIXINYUANHUNHEA"],["003120","BSXYHHC","博时鑫源混合C","混合型","BOSHIXINYUANHUNHEC"],["003121","XCWLA","信诚稳利A","债券型","XINCHENGWENLIA"],["003122","PHXSDKHH","鹏华兴盛定开混合","混合型","PENGHUAXINGSHENGDINGKAIHUNHE"],["003123","TZXLBNDKZA","天治鑫利半年定开债A","定开债券","TIANZHIXINLIBANNIANDINGKAIZHAIA"],["003124","TZXLBNDKZC","天治鑫利半年定开债C","定开债券","TIANZHIXINLIBANNIANDINGKAIZHAIC"],["003125","ZKWTWXCZHH","中科沃土沃鑫成长混合","混合型","ZHONGKEWOTUWOXINCHENGZHANGHUNHE"],["003126","CXCZBNZQA","长信纯债半年债券A","定开债券","CHANGXINCHUNZHAIBANNIANZHAIQUANA"],["003127","CXCZBNZQC","长信纯债半年债券C","定开债券","CHANGXINCHUNZHAIBANNIANZHAIQUANC"],["003130","XCWLC","信诚稳利C","债券型","XINCHENGWENLIC"],["003131","GSABQGZZHH","国寿安保强国智造混合","混合型","GUOSHOUANBAOQIANGGUOZHIZAOHUNHE"],["003132","DBXHBLHPZHH","德邦新回报灵活配置混合","混合型","DEBANGXINHUIBAOLINGHUOPEIZHIHUNHE"],["003133","YFDYXZQA","易方达裕鑫债券A","债券型","YIFANGDAYUXINZHAIQUANA"],["003134","YFDYXZQC","易方达裕鑫债券C","债券型","YIFANGDAYUXINZHAIQUANC"],["003135","JYSAFYZQ","金元顺安沣楹债券","债券型","JINYUANSHUNANFENGYINGZHAIQUAN"],["003140","PHHTHHA","鹏华弘腾混合A","混合型","PENGHUAHONGTENGHUNHEA"],["003141","PHHTHHC","鹏华弘腾混合C","混合型","PENGHUAHONGTENGHUNHEC"],["003142","PHHDHHA","鹏华弘达混合A","混合型","PENGHUAHONGDAHUNHEA"],["003143","PHHDHHC","鹏华弘达混合C","混合型","PENGHUAHONGDAHUNHEC"],["003144","HBXJYHHLOFC","华宝新机遇混合(LOF)C","混合型","HUABAOXINJIYUHUNHELOFC"],["003145","ZRJZYS","中融竞争优势","股票型","ZHONGRONGJINGZHENGYOUSHI"],["003146","RTTYZQ","融通通优债券","债券型","RONGTONGTONGYOUZHAIQUAN"],["003147","DCDTLHHH","大成动态量化混合","混合型","DACHENGDONGTAILIANGHUAHUNHE"],["003148","ZOJYLHPZHHA","中欧瑾悠灵活配置混合A","混合型","ZHONGOUJINYOULINGHUOPEIZHIHUNHEA"],["003149","ZOJYLHPZHHC","中欧瑾悠灵活配置混合C","混合型","ZHONGOUJINYOULINGHUOPEIZHIHUNHEC"],["003150","ZORCDQKFHHA","中欧睿诚定期开放混合A","混合型","ZHONGOURUICHENGDINGQIKAIFANGHUNHEA"],["003151","ZORCDQKFHHC","中欧睿诚定期开放混合C","混合型","ZHONGOURUICHENGDINGQIKAIFANGHUNHEC"],["003152","HFTXLHPZHHA","华富天鑫灵活配置混合A","混合型","HUAFUTIANXINLINGHUOPEIZHIHUNHEA"],["003153","HFTXLHPZHHC","华富天鑫灵活配置混合C","混合型","HUAFUTIANXINLINGHUOPEIZHIHUNHEC"],["003154","HBXHLHH","华宝新活力混合","混合型","HUABAOXINHUOLIHUNHE"],["003155","ZJFSCZZQ","中加丰尚纯债债券","债券型","ZHONGJIAFENGSHANGCHUNZHAIZHAIQUAN"],["003156","ZSZYCZA","招商招悦纯债A","债券型","ZHAOSHANGZHAOYUECHUNZHAIA"],["003157","ZSZYCZC","招商招悦纯债C","债券型","ZHAOSHANGZHAOYUECHUNZHAIC"],["003158","GTRYRDHH","国投瑞银瑞达混合","混合型","GUOTOURUIYINRUIDAHUNHE"],["003159","WJHR18GYDKZA","万家恒瑞18个月定开债A","定开债券","WANJIAHENGRUI18GEYUEDINGKAIZHAIA"],["003160","WJHR18GYDKZC","万家恒瑞18个月定开债C","定开债券","WANJIAHENGRUI18GEYUEDINGKAIZHAIC"],["003161","NFATYLHH","南方安泰养老混合","混合型","NANFANGANTAIYANGLAOHUNHE"],["003162","BSFNCZZQ","博时富宁纯债债券","债券型","BOSHIFUNINGCHUNZHAIZHAIQUAN"],["003163","JYTYCZ","金鹰添益纯债","债券型","JINYINGTIANYICHUNZHAI"],["003164","JXXJTLHBB","建信现金添利货币B","货币型","JIANXINXIANJINTIANLIHUOBIB"],["003165","PHHJHHAL","鹏华弘嘉混合A类","混合型","PENGHUAHONGJIAHUNHEALEI"],["003166","PHHJHHCL","鹏华弘嘉混合C类","混合型","PENGHUAHONGJIAHUNHECLEI"],["003167","QHKYDRZQA","前海开源鼎瑞债券A","债券型","QIANHAIKAIYUANDINGRUIZHAIQUANA"],["003168","QHKYDRZQC","前海开源鼎瑞债券C","债券型","QIANHAIKAIYUANDINGRUIZHAIQUANC"],["003169","CSSHHHA","长盛盛辉混合A","混合型","CHANGSHENGSHENGHUIHUNHEA"],["003170","CSSHHHC","长盛盛辉混合C","混合型","CHANGSHENGSHENGHUIHUNHEC"],["003171","XDAYHLCHB","信达澳银慧理财货币","货币型","XINDAAOYINHUILICAIHUOBI"],["003172","PHFAZQ","鹏华丰安债券","债券型","PENGHUAFENGANZHAIQUAN"],["003173","MSJYXACZC","民生加银鑫安纯债C","债券型","MINSHENGJIAYINXINANCHUNZHAIC"],["003175","HTBRDCLHH","华泰柏瑞多策略混合","混合型","HUATAIBAIRUIDUOCELUEHUNHE"],["003176","DBJYZQA","德邦景颐债券A","债券型","DEBANGJINGYIZHAIQUANA"],["003177","DBJYZQC","德邦景颐债券C","债券型","DEBANGJINGYIZHAIQUANC"],["003178","GFJSCZ","广发景盛纯债","债券型","GUANGFAJINGSHENGCHUNZHAI"],["003179","SXYLZQ","山西裕利债券","债券型","SHANXIYULIZHAIQUAN"],["003180","QHLHTLZQA","前海联合添利债券A","债券型","QIANHAILIANHETIANLIZHAIQUANA"],["003181","QHLHTLZQC","前海联合添利债券C","债券型","QIANHAILIANHETIANLIZHAIQUANC"],["003182","HFHXHHA","华富弘鑫混合A","混合型","HUAFUHONGXINHUNHEA"],["003183","HFHXHHC","华富弘鑫混合C","混合型","HUAFUHONGXINHUNHEC"],["003185","JXHBB","建信货币B","货币型","JIANXINHUOBIB"],["003186","PHXADQKFHH","鹏华兴安定期开放混合","混合型","PENGHUAXINGANDINGQIKAIFANGHUNHE"],["003187","JSAYHH","嘉实安益混合","混合型","JIASHIANYIHUNHE"],["003188","BSJYCZZQ","博时聚源纯债债券","债券型","BOSHIJUYUANCHUNZHAIZHAIQUAN"],["003189","HTFBXBBHH","汇添富保鑫保本混合","保本型","HUITIANFUBAOXINBAOBENHUNHE"],["003190","CJHXXHBHHA","创金合信鑫回报混合A","混合型","CHUANGJINHEXINXINHUIBAOHUNHEA"],["003191","CJHXXHBHHC","创金合信鑫回报混合C","混合型","CHUANGJINHEXINXINHUIBAOHUNHEC"],["003192","CJHXZFCZ","创金合信尊丰纯债","债券型","CHUANGJINHEXINZUNFENGCHUNZHAI"],["003194","HTFZZSHGQETFLJ","汇添富中证上海国企ETF联接","联接基金","HUITIANFUZHONGZHENGSHANGHAIGUOQIETFLIANJIE"],["003195","GDBDXYLCZA","光大保德信永利纯债A","债券型","GUANGDABAODEXINYONGLICHUNZHAIA"],["003196","GDBDXYLCZC","光大保德信永利纯债C","债券型","GUANGDABAODEXINYONGLICHUNZHAIC"],["003197","GDBDXACZQA","光大保德信安诚债券A","债券型","GUANGDABAODEXINANCHENGZHAIQUANA"],["003198","GDBDXACZQC","光大保德信安诚债券C","债券型","GUANGDABAODEXINANCHENGZHAIQUANC"],["003199","CSSQYNZQA","长盛盛琪一年债券A","定开债券","CHANGSHENGSHENGQIYINIANZHAIQUANA"],["003200","CSSQYNZQC","长盛盛琪一年债券C","定开债券","CHANGSHENGSHENGQIYINIANZHAIQUANC"],["003206","BSHXHB","博时合鑫货币","货币型","BOSHIHEXINHUOBI"],["003207","BSFFCZ","博时富发纯债","债券型","BOSHIFUFACHUNZHAI"],["003208","DXLHDCLHH","东兴量化多策略混合","混合型","DONGXINGLIANGHUADUOCELUEHUNHE"],["003209","PHFDZQ","鹏华丰达债券","债券型","PENGHUAFENGDAZHAIQUAN"],["003210","BSZZCZZQ","博时智臻纯债债券","债券型","BOSHIZHIZHENCHUNZHAIZHAIQUAN"],["003211","GFJAZQA","广发集安债券A","债券型","GUANGFAJIANZHAIQUANA"],["003212","GFJAZQC","广发集安债券C","债券型","GUANGFAJIANZHAIQUANC"],["003213","ZYYXDQKFZQ","中银悦享定期开放债券","定开债券","ZHONGYINYUEXIANGDINGQIKAIFANGZHAIQUAN"],["003214","YFDFHCZZQ","易方达富惠纯债债券","债券型","YIFANGDAFUHUICHUNZHAIZHAIQUAN"],["003215","XCZXLHPZHHA","信诚至鑫灵活配置混合A","混合型","XINCHENGZHIXINLINGHUOPEIZHIHUNHEA"],["003216","XCZXLHPZHHC","信诚至鑫灵活配置混合C","混合型","XINCHENGZHIXINLINGHUOPEIZHIHUNHEC"],["003218","QHKYXHZQA","前海开源祥和债券A","债券型","QIANHAIKAIYUANXIANGHEZHAIQUANA"],["003219","QHKYXHZQC","前海开源祥和债券C","债券型","QIANHAIKAIYUANXIANGHEZHAIQUANC"],["003220","ZSHLCZZQ","浙商惠利纯债债券","债券型","ZHESHANGHUILICHUNZHAIZHAIQUAN"],["003221","XHFLZQA","新华丰利债券A","债券型","XINHUAFENGLIZHAIQUANA"],["003222","XHFLZQC","新华丰利债券C","债券型","XINHUAFENGLIZHAIQUANC"],["003223","GFJFCZ","广发景丰纯债","债券型","GUANGFAJINGFENGCHUNZHAI"],["003224","PHXRDQKFHHA","鹏华兴润定期开放混合A","混合型","PENGHUAXINGRUNDINGQIKAIFANGHUNHEA"],["003225","PHXRDQKFHHC","鹏华兴润定期开放混合C","混合型","PENGHUAXINGRUNDINGQIKAIFANGHUNHEC"],["003226","XCWJZQA","信诚稳健债券A","债券型","XINCHENGWENJIANZHAIQUANA"],["003227","XCWJZQC","信诚稳健债券C","债券型","XINCHENGWENJIANZHAIQUANC"],["003228","PYRRXHBA","浦银日日鑫货币A","货币型","PUYINRIRIXINHUOBIA"],["003229","PYRRXHBB","浦银日日鑫货币B","货币型","PUYINRIRIXINHUOBIB"],["003230","CJHXXDLHHA","创金合信鑫动力混合A","混合型","CHUANGJINHEXINXINDONGLIHUNHEA"],["003231","CJHXXDLHHC","创金合信鑫动力混合C","混合型","CHUANGJINHEXINXINDONGLIHUNHEC"],["003232","CJHXXJZHHA","创金合信鑫价值混合A","混合型","CHUANGJINHEXINXINJIAZHIHUNHEA"],["003233","CJHXXJZHHC","创金合信鑫价值混合C","混合型","CHUANGJINHEXINXINJIAZHIHUNHEC"],["003234","XCZLHHA","信诚至利混合A","混合型","XINCHENGZHILIHUNHEA"],["003235","XCZLHHC","信诚至利混合C","混合型","XINCHENGZHILIHUNHEC"],["003236","XCHYZQA","信诚惠盈债券A","债券型","XINCHENGHUIYINGZHAIQUANA"],["003237","XCHYZQC","信诚惠盈债券C","债券型","XINCHENGHUIYINGZHAIQUANC"],["003238","XHWYZZZTLHPZHH","新华外延增长主题灵活配置混合","混合型","XINHUAWAIYANZENGZHANGZHUTILINGHUOPEIZHIHUNHE"],["003239","BSAQYNDKZA","博时安祺一年定开债A","定开债券","BOSHIANQIYINIANDINGKAIZHAIA"],["003240","BSAQYNDKZC","博时安祺一年定开债C","定开债券","BOSHIANQIYINIANDINGKAIZHAIC"],["003241","CJHXLHFXHHA","创金合信量化发现混合A","混合型","CHUANGJINHEXINLIANGHUAFAXIANHUNHEA"],["003242","CJHXLHFXHHC","创金合信量化发现混合C","混合型","CHUANGJINHEXINLIANGHUAFAXIANHUNHEC"],["003243","STMGZGSJRMB","上投摩根中国世纪人民币","QDII","SHANGTOUMOGENZHONGGUOSHIJIRENMINBI"],["003244","STMGZGSJMYXC","上投摩根中国世纪美元现钞","QDII","SHANGTOUMOGENZHONGGUOSHIJIMEIYUANXIANCHAO"],["003245","STMGZGSJMYXH","上投摩根中国世纪美元现汇","QDII","SHANGTOUMOGENZHONGGUOSHIJIMEIYUANXIANHUI"],["003246","HTBRTTBHBA","华泰柏瑞天添宝货币A","货币型","HUATAIBAIRUITIANTIANBAOHUOBIA"],["003247","TDHLQZLHPZHHA","泰达宏利启智灵活配置混合A","混合型","TAIDAHONGLIQIZHILINGHUOPEIZHIHUNHEA"],["003248","TDHLQZLHPZHHC","泰达宏利启智灵活配置混合C","混合型","TAIDAHONGLIQIZHILINGHUOPEIZHIHUNHEC"],["003249","JXHFCZZQ","建信恒丰纯债债券","债券型","JIANXINHENGFENGCHUNZHAIZHAIQUAN"],["003250","RTTSLHPZHHA","融通通尚灵活配置混合A","混合型","RONGTONGTONGSHANGLINGHUOPEIZHIHUNHEA"],["003251","RTTSLHPZHHC","融通通尚灵活配置混合C","混合型","RONGTONGTONGSHANGLINGHUOPEIZHIHUNHEC"],["003252","DCTYJYXHBA","大成添益交易型货币A","货币型","DACHENGTIANYIJIAOYIXINGHUOBIA"],["003253","DCTYJYXHBB","大成添益交易型货币B","货币型","DACHENGTIANYIJIAOYIXINGHUOBIB"],["003254","QHKYDYZQA","前海开源鼎裕债券A","债券型","QIANHAIKAIYUANDINGYUZHAIQUANA"],["003255","QHKYDYZQC","前海开源鼎裕债券C","债券型","QIANHAIKAIYUANDINGYUZHAIQUANC"],["003256","XCZYHHA","信诚至益混合A","混合型","XINCHENGZHIYIHUNHEA"],["003257","XCZYHHC","信诚至益混合C","混合型","XINCHENGZHIYIHUNHEC"],["003258","BSFXCZZQ","博时富祥纯债债券","债券型","BOSHIFUXIANGCHUNZHAIZHAIQUAN"],["003259","BSJLCZZQ","博时聚利纯债债券","债券型","BOSHIJULICHUNZHAIZHAIQUAN"],["003260","BSLFCZ","博时利发纯债","债券型","BOSHILIFACHUNZHAI"],["003261","AXHS300ZQFQSA","安信沪深300增强发起式A","股票指数","ANXINHUSHEN300ZENGQIANGFAQISHIA"],["003262","AXHS300ZQFQSC","安信沪深300增强发起式C","股票指数","ANXINHUSHEN300ZENGQIANGFAQISHIC"],["003264","XHHQTLHBB","新华活期添利货币B","货币型","XINHUAHUOQITIANLIHUOBIB"],["003265","ZSZKCZA","招商招坤纯债A","债券型","ZHAOSHANGZHAOKUNCHUNZHAIA"],["003266","ZSZKCZC","招商招坤纯债C","债券型","ZHAOSHANGZHAOKUNCHUNZHAIC"],["003267","XHYNBHBB","新华壹诺宝货币B","货币型","XINHUAYINUOBAOHUOBIB"],["003268","BSYCCZ","博时悦楚纯债","债券型","BOSHIYUECHUCHUNZHAI"],["003269","ZSZQCZA","招商招乾纯债A","债券型","ZHAOSHANGZHAOQIANCHUNZHAIA"],["003270","ZSZQCZC","招商招乾纯债C","债券型","ZHAOSHANGZHAOQIANCHUNZHAIC"],["003271","GLAXRHHA","国联安鑫瑞混合A","混合型","GUOLIANANXINRUIHUNHEA"],["003272","GLAXRHHC","国联安鑫瑞混合C","混合型","GUOLIANANXINRUIHUNHEC"],["003273","AXYFDKZQA","安信永丰定开债券A","定开债券","ANXINYONGFENGDINGKAIZHAIQUANA"],["003274","AXYFDKZQC","安信永丰定开债券C","定开债券","ANXINYONGFENGDINGKAIZHAIQUANC"],["003275","GLAXYHHA","国联安鑫盈混合A","混合型","GUOLIANANXINYINGHUNHEA"],["003276","GLAXYHHC","国联安鑫盈混合C","混合型","GUOLIANANXINYINGHUNHEC"],["003277","XCWRZQA","信诚稳瑞债券A","债券型","XINCHENGWENRUIZHAIQUANA"],["003278","XCWRZQC","信诚稳瑞债券C","债券型","XINCHENGWENRUIZHAIQUANC"],["003279","RTHGSZHSHLHPZHH","融通沪港深智慧生活灵活配置混合","混合型","RONGTONGHUGANGSHENZHIHUISHENGHUOLINGHUOPEIZHIHUNHE"],["003280","PHFHZQ","鹏华丰恒债券","债券型","PENGHUAFENGHENGZHAIQUAN"],["003281","GFHQBHBB","广发活期宝货币B","货币型","GUANGFAHUOQIBAOHUOBIB"],["003282","XCZYLHPZHHA","信诚至裕灵活配置混合A","混合型","XINCHENGZHIYULINGHUOPEIZHIHUNHEA"],["003283","XCZYLHPZHHC","信诚至裕灵活配置混合C","混合型","XINCHENGZHIYULINGHUOPEIZHIHUNHEC"],["003284","ZYYYJKHH","中邮医药健康混合","混合型","ZHONGYOUYIYAOJIANKANGHUNHE"],["003285","GSABAKCZZQ","国寿安保安康纯债债券","债券型","GUOSHOUANBAOANKANGCHUNZHAIZHAIQUAN"],["003286","PADHHXCZ","平安大华惠享纯债","债券型","PINGANDAHUAHUIXIANGCHUNZHAI"],["003287","XCWYZQA","信诚稳益债券A","债券型","XINCHENGWENYIZHAIQUANA"],["003288","XCWYZQC","信诚稳益债券C","债券型","XINCHENGWENYIZHAIQUANC"],["003289","CJHXZTCZZQ","创金合信尊泰纯债债券","债券型","CHUANGJINHEXINZUNTAICHUNZHAIZHAIQUAN"],["003290","CCJWZQ","长城久稳债券","债券型","CHANGCHENGJIUWENZHAIQUAN"],["003292","JSYSCZHH","嘉实优势成长混合","混合型","JIASHIYOUSHICHENGZHANGHUNHE"],["003293","YFDKRHH","易方达科瑞混合","混合型","YIFANGDAKERUIHUNHE"],["003295","NFAYYLHH","南方安裕养老混合","混合型","NANFANGANYUYANGLAOHUNHE"],["003298","JSWLCYGPA","嘉实物流产业股票A","股票型","JIASHIWULIUCHANYEGUPIAOA"],["003299","JSWLCYGPC","嘉实物流产业股票C","股票型","JIASHIWULIUCHANYEGUPIAOC"],["003300","HXYHHH","华夏圆和混合","混合型","HUAXIAYUANHEHUNHE"],["003301","HXDRZQA","华夏鼎融债券A","债券型","HUAXIADINGRONGZHAIQUANA"],["003302","HXDRZQC","华夏鼎融债券C","债券型","HUAXIADINGRONGZHAIQUANC"],["003304","QHKYHGSHXZYHHA","前海开源沪港深核心资源混合A","混合型","QIANHAIKAIYUANHUGANGSHENHEXINZIYUANHUNHEA"],["003305","QHKYHGSHXZYHHC","前海开源沪港深核心资源混合C","混合型","QIANHAIKAIYUANHUGANGSHENHEXINZIYUANHUNHEC"],["003306","MSJYXYZQA","民生加银鑫益债券A","债券型","MINSHENGJIAYINXINYIZHAIQUANA"],["003307","MSJYXYZQC","民生加银鑫益债券C","债券型","MINSHENGJIAYINXINYIZHAIQUANC"],["003308","ZXJTRL","中信建投睿利","混合型","ZHONGXINJIANTOURUILI"],["003309","XYQYYNDKZA","兴业启元一年定开债A","定开债券","XINGYEQIYUANYINIANDINGKAIZHAIA"],["003310","XYQYYNDKZC","兴业启元一年定开债C","定开债券","XINGYEQIYUANYINIANDINGKAIZHAIC"],["003311","DMRCDPTXGP","大摩睿成大盘弹性股票","股票型","DAMORUICHENGDAPANTANXINGGUPIAO"],["003312","DMRCZXPTXGP","大摩睿成中小盘弹性股票","股票型","DAMORUICHENGZHONGXIAOPANTANXINGGUPIAO"],["003313","ZYRXZQ","中银睿享债券","债券型","ZHONGYINRUIXIANGZHAIQUAN"],["003314","ZSHNCZZQ","浙商惠南纯债债券","债券型","ZHESHANGHUINANCHUNZHAIZHAIQUAN"],["003315","JSCCJRSLDKZ","景顺长城景瑞双利定开债","定开债券","JINGSHUNCHANGCHENGJINGRUISHUANGLIDINGKAIZHAI"],["003316","ZYZQXJGJHBA","中银证券现金管家货币A","货币型","ZHONGYINZHENGQUANXIANJINGUANJIAHUOBIA"],["003317","ZYZQXJGJHBB","中银证券现金管家货币B","货币型","ZHONGYINZHENGQUANXIANJINGUANJIAHUOBIB"],["003318","JSZZ500HYZXDBD","景顺中证500行业中性低波动","股票指数","JINGSHUNZHONGZHENG500HANGYEZHONGXINGDIBODONG"],["003319","JXRFTLHHA","建信瑞丰添利混合A","混合型","JIANXINRUIFENGTIANLIHUNHEA"],["003320","JXRFTLHHC","建信瑞丰添利混合C","混合型","JIANXINRUIFENGTIANLIHUNHEC"],["003321","YFDYYCLRMB","易方达原油C类人民币","QDII","YIFANGDAYUANYOUCLEIRENMINBI"],["003322","YFDYYALMYH","易方达原油A类美元汇","QDII","YIFANGDAYUANYOUALEIMEIYUANHUI"],["003323","YFDYYCLMYH","易方达原油C类美元汇","QDII","YIFANGDAYUANYOUCLEIMEIYUANHUI"],["003324","DFYX18GYDKZA","东方永兴18个月定开债A","定开债券","DONGFANGYONGXING18GEYUEDINGKAIZHAIA"],["003325","DFYX18GYDKZC","东方永兴18个月定开债C","定开债券","DONGFANGYONGXING18GEYUEDINGKAIZHAIC"],["003326","ZSRCDKHH","招商睿诚定开混合","混合型","ZHAOSHANGRUICHENGDINGKAIHUNHE"],["003327","WJXJCZA","万家鑫璟纯债A","债券型","WANJIAXINJINGCHUNZHAIA"],["003328","WJXJCZC","万家鑫璟纯债C","债券型","WANJIAXINJINGCHUNZHAIC"],["003329","WJXACZZQA","万家鑫安纯债债券A","债券型","WANJIAXINANCHUNZHAIZHAIQUANA"],["003330","WJXACZZQC","万家鑫安纯债债券C","债券型","WANJIAXINANCHUNZHAIZHAIQUANC"],["003331","BSLZDKHH","博时乐臻定开混合","混合型","BOSHILEZHENDINGKAIHUNHE"],["003332","NFRFHH","南方荣发混合","混合型","NANFANGRONGFAHUNHE"],["003333","TXZXCZHH","泰信智选成长混合","混合型","TAIXINZHIXUANCHENGZHANGHUNHE"],["003334","ZRRXSYA","中融融信双盈A","债券型","ZHONGRONGRONGXINSHUANGYINGA"],["003335","ZRRXSYC","中融融信双盈C","债券型","ZHONGRONGRONGXINSHUANGYINGC"],["003336","CJSYZQZQ","长江收益增强债券","债券型","CHANGJIANGSHOUYIZENGQIANGZHAIQUAN"],["003337","NFYYZQFQSA","南方颐元债券发起式A","债券型","NANFANGYIYUANZHAIQUANFAQISHIA"],["003338","NFYYZQFQSC","南方颐元债券发起式C","债券型","NANFANGYIYUANZHAIQUANFAQISHIC"],["003339","HARXDKHHA","华安睿享定开混合A","混合型","HUAANRUIXIANGDINGKAIHUNHEA"],["003340","HARXDKHHC","华安睿享定开混合C","混合型","HUAANRUIXIANGDINGKAIHUNHEC"],["003341","GYRY18GYDKZ","工银瑞盈18个月定开债","定开债券","GONGYINRUIYING18GEYUEDINGKAIZHAI"],["003342","GYGZCZZQA","工银国债纯债债券A","债券型","GONGYINGUOZHAICHUNZHAIZHAIQUANA"],["003343","PHHHLHPZHHA","鹏华弘惠灵活配置混合A","混合型","PENGHUAHONGHUILINGHUOPEIZHIHUNHEA"],["003344","PHHHLHPZHHC","鹏华弘惠灵活配置混合C","混合型","PENGHUAHONGHUILINGHUOPEIZHIHUNHEC"],["003345","AXXCZHHA","安信新成长混合A","混合型","ANXINXINCHENGZHANGHUNHEA"],["003346","AXXCZHHC","安信新成长混合C","混合型","ANXINXINCHENGZHANGHUNHEC"],["003349","CXWYCZ","长信稳益纯债","债券型","CHANGXINWENYICHUNZHAI"],["003350","GFXS18GYDKHH","广发鑫盛18个月定开混合","混合型","GUANGFAXINSHENG18GEYUEDINGKAIHUNHE"],["003351","ZSWRDKHHA","招商稳荣定开混合A","混合型","ZHAOSHANGWENRONGDINGKAIHUNHEA"],["003352","ZSWRDKHHC","招商稳荣定开混合C","混合型","ZHAOSHANGWENRONGDINGKAIHUNHEC"],["003353","XCZYLHPZHHA","信诚至优灵活配置混合A","混合型","XINCHENGZHIYOULINGHUOPEIZHIHUNHEA"],["003354","XCZYLHPZHHC","信诚至优灵活配置混合C","混合型","XINCHENGZHIYOULINGHUOPEIZHIHUNHEC"],["003355","ZSWXDKLHHHA","招商稳祥定开灵活混合A","混合型","ZHAOSHANGWENXIANGDINGKAILINGHUOHUNHEA"],["003356","ZSWXDKLHHHC","招商稳祥定开灵活混合C","混合型","ZHAOSHANGWENXIANGDINGKAILINGHUOHUNHEC"],["003357","JSWXCZZQC","嘉实稳祥纯债债券C","债券型","JIASHIWENXIANGCHUNZHAIZHAIQUANC"],["003358","YFDZZ710NGKZZS","易方达中债7-10年国开债指数","债券指数","YIFANGDAZHONGZHAI710NIANGUOKAIZHAIZHISHU"],["003359","DC360HLWDSJ100C","大成360互联网+大数据100C","股票指数","DACHENG360HULIANWANGDASHUJU100C"],["003360","QHKYRHZQA","前海开源瑞和债券A","债券型","QIANHAIKAIYUANRUIHEZHAIQUANA"],["003361","QHKYRHZQC","前海开源瑞和债券C","债券型","QIANHAIKAIYUANRUIHEZHAIQUANC"],["003362","GLARLDKHH","国联安睿利定开混合","混合型","GUOLIANANRUILIDINGKAIHUNHE"],["003363","CJLXHBA","长江乐享货币A","货币型","CHANGJIANGLEXIANGHUOBIA"],["003364","CJLXHBB","长江乐享货币B","货币型","CHANGJIANGLEXIANGHUOBIB"],["003365","CJLXHBC","长江乐享货币C","货币型","CHANGJIANGLEXIANGHUOBIC"],["003366","ZSHJZZZXCZZS","浙商汇金中证转型成长指数","股票指数","ZHESHANGHUIJINZHONGZHENGZHUANXINGCHENGZHANGZHISHU"],["003367","PHXHDQKFHHA","鹏华兴合定期开放混合A","混合型","PENGHUAXINGHEDINGQIKAIFANGHUNHEA"],["003368","PHXHDQKFHHC","鹏华兴合定期开放混合C","混合型","PENGHUAXINGHEDINGQIKAIFANGHUNHEC"],["003369","ZSZQCZA","招商招庆纯债A","债券型","ZHAOSHANGZHAOQINGCHUNZHAIA"],["003370","ZSZQCZC","招商招庆纯债C","债券型","ZHAOSHANGZHAOQINGCHUNZHAIC"],["003371","ZSZXCZA","招商招轩纯债A","债券型","ZHAOSHANGZHAOXUANCHUNZHAIA"],["003372","ZSZXCZC","招商招轩纯债C","债券型","ZHAOSHANGZHAOXUANCHUNZHAIC"],["003373","DCJLLHPZHHA","大成景禄灵活配置混合A","混合型","DACHENGJINGLULINGHUOPEIZHIHUNHEA"],["003374","DCJLLHPZHHC","大成景禄灵活配置混合C","混合型","DACHENGJINGLULINGHUOPEIZHIHUNHEC"],["003376","GFZZ710NGKZZSA","广发中债7-10年国开债指数A","债券指数","GUANGFAZHONGZHAI710NIANGUOKAIZHAIZHISHUA"],["003377","GFZZ710NGKZZSC","广发中债7-10年国开债指数C","债券指数","GUANGFAZHONGZHAI710NIANGUOKAIZHAIZHISHUC"],["003378","TKCLYXHH","泰康策略优选混合","混合型","TAIKANGCELUEYOUXUANHUNHE"],["003379","XCZXHHA","信诚至选混合A","混合型","XINCHENGZHIXUANHUNHEA"],["003380","XCZXHHC","信诚至选混合C","混合型","XINCHENGZHIXUANHUNHEC"],["003381","BSYXCZZQ","博时裕信纯债债券","债券型","BOSHIYUXINCHUNZHAIZHAIQUAN"],["003382","MSJYXXZQA","民生加银鑫享债券A","债券型","MINSHENGJIAYINXINXIANGZHAIQUANA"],["003383","MSJYXXZQC","民生加银鑫享债券C","债券型","MINSHENGJIAYINXINXIANGZHAIQUANC"],["003384","JYTYCZZQ","金鹰添盈纯债债券","债券型","JINYINGTIANYINGCHUNZHAIZHAIQUAN"],["003385","GYQQMYZARMB","工银全球美元债A人民币","QDII","GONGYINQUANQIUMEIYUANZHAIARENMINBI"],["003386","GYQQMYZAMYXH","工银全球美元债A美元现汇","QDII","GONGYINQUANQIUMEIYUANZHAIAMEIYUANXIANHUI"],["003387","GYQQMYZC","工银全球美元债C","QDII","GONGYINQUANQIUMEIYUANZHAIC"],["003388","ZSZYBHBA","招商招益宝货币A","货币型","ZHAOSHANGZHAOYIBAOHUOBIA"],["003389","ZSZYBHBB","招商招益宝货币B","货币型","ZHAOSHANGZHAOYIBAOHUOBIB"],["003390","JXYNDK","江信一年定开","定开债券","JIANGXINYINIANDINGKAI"],["003391","JXTTYHBA","建信天添益货币A","货币型","JIANXINTIANTIANYIHUOBIA"],["003392","JXTTYHBB","建信天添益货币B","货币型","JIANXINTIANTIANYIHUOBIB"],["003393","JXTTYHBC","建信天添益货币C","货币型","JIANXINTIANTIANYIHUOBIC"],["003394","JXHAYNDKZ","建信恒安一年定开债","定开债券","JIANXINHENGANYINIANDINGKAIZHAI"],["003395","AXZXCZ","安信尊享纯债","债券型","ANXINZUNXIANGCHUNZHAI"],["003396","DFHYXHLHH","东方红优享红利混合","混合型","DONGFANGHONGYOUXIANGHONGLIHUNHE"],["003397","YHTYWHLHPZHH","银华体育文化灵活配置混合","混合型","YINHUATIYUWENHUALINGHUOPEIZHIHUNHE"],["003398","TPRRJHBA","太平日日金货币A","货币型","TAIPINGRIRIJINHUOBIA"],["003399","TPRRJHBB","太平日日金货币B","货币型","TAIPINGRIRIJINHUOBIB"],["003400","JXHRYNDKZ","建信恒瑞一年定开债","定开债券","JIANXINHENGRUIYINIANDINGKAIZHAI"],["003401","GYKZZZQ","工银可转债债券","债券型","GONGYINKEZHUANZHAIZHAIQUAN"],["003402","AXHQBHBA","安信活期宝货币A","货币型","ANXINHUOQIBAOHUOBIA"],["003403","HSRFHH","华商瑞丰混合","混合型","HUASHANGRUIFENGHUNHE"],["003404","ZSWSDKHHA","招商稳盛定开混合A","混合型","ZHAOSHANGWENSHENGDINGKAIHUNHEA"],["003405","ZSWSDKHHC","招商稳盛定开混合C","混合型","ZHAOSHANGWENSHENGDINGKAIHUNHEC"],["003406","NFDYZQ","南方多元债券","债券型","NANFANGDUOYUANZHAIQUAN"],["003407","JSCCJTFLCZA","景顺长城景泰丰利纯债A","债券型","JINGSHUNCHANGCHENGJINGTAIFENGLICHUNZHAIA"],["003408","JSCCJTFLCZC","景顺长城景泰丰利纯债C","债券型","JINGSHUNCHANGCHENGJINGTAIFENGLICHUNZHAIC"],["003409","JSCCJYSLZQA","景顺长城景颐盛利债券A","债券型","JINGSHUNCHANGCHENGJINGYISHENGLIZHAIQUANA"],["003410","JSJYSLC","景顺景颐盛利C","债券型","JINGSHUNJINGYISHENGLIC"],["003411","PHHKLHPZHHA","鹏华弘康灵活配置混合A","混合型","PENGHUAHONGKANGLINGHUOPEIZHIHUNHEA"],["003412","PHHKLHPZHHC","鹏华弘康灵活配置混合C","混合型","PENGHUAHONGKANGLINGHUOPEIZHIHUNHEC"],["003413","HTBRXJJHGSHH","华泰柏瑞新经济沪港深混合","混合型","HUATAIBAIRUIXINJINGJIHUGANGSHENHUNHE"],["003414","TDHLCJHHA","泰达宏利创金混合A","混合型","TAIDAHONGLICHUANGJINHUNHEA"],["003415","TDHLCJHHC","泰达宏利创金混合C","混合型","TAIDAHONGLICHUANGJINHUNHEC"],["003416","ZSCJDSJGP","招商财经大数据股票","股票型","ZHAOSHANGCAIJINGDASHUJUGUPIAO"],["003417","ZJFZCZZQ","中加丰泽纯债债券","债券型","ZHONGJIAFENGZECHUNZHAIZHAIQUAN"],["003418","HRYDRXZQ","华润元大润鑫债券","债券型","HUARUNYUANDARUNXINZHAIQUAN"],["003419","ZOHAYNDQKFZQ","中欧弘安一年定期开放债券","定开债券","ZHONGOUHONGANYINIANDINGQIKAIFANGZHAIQUAN"],["003420","DBQLZQA","德邦群利债券A","债券型","DEBANGQUNLIZHAIQUANA"],["003421","DBQLZQC","德邦群利债券C","债券型","DEBANGQUNLIZHAIQUANC"],["003422","GSABTLHBA","国寿安保添利货币A","货币型","GUOSHOUANBAOTIANLIHUOBIA"],["003423","GSABTLHBB","国寿安保添利货币B","货币型","GUOSHOUANBAOTIANLIHUOBIB"],["003424","JXHFCZ","江信洪福纯债","债券型","JIANGXINHONGFUCHUNZHAI"],["003425","JXTFA","江信添福A","债券型","JIANGXINTIANFUA"],["003426","JXTFC","江信添福C","债券型","JIANGXINTIANFUC"],["003427","JXHYYNDKZ","建信恒远一年定开债","定开债券","JIANXINHENGYUANYINIANDINGKAIZHAI"],["003428","ZJFYCZZQ","中加丰盈纯债债券","债券型","ZHONGJIAFENGYINGCHUNZHAIZHAIQUAN"],["003429","ZZXYZGDJXYZZS","中证兴业中高等级信用债指数","债券指数","ZHONGZHENGXINGYEZHONGGAODENGJIXINYONGZHAIZHISHU"],["003430","XY14TLCA","兴业14天理财A","理财型","XINGYE14TIANLICAIA"],["003431","XY14TLCB","兴业14天理财B","理财型","XINGYE14TIANLICAIB"],["003432","XCZRLHPZA","信诚至瑞灵活配置A","混合型","XINCHENGZHIRUILINGHUOPEIZHIA"],["003433","XCZRLHPZC","信诚至瑞灵活配置C","混合型","XINCHENGZHIRUILINGHUOPEIZHIC"],["003434","BSXZLHPZHHA","博时鑫泽灵活配置混合A","混合型","BOSHIXINZELINGHUOPEIZHIHUNHEA"],["003435","BSXZLHPZHHC","博时鑫泽灵活配置混合C","混合型","BOSHIXINZELINGHUOPEIZHIHUNHEC"],["003436","BSXFHHA","博时鑫丰混合A","混合型","BOSHIXINFENGHUNHEA"],["003437","BSXFHHC","博时鑫丰混合C","混合型","BOSHIXINFENGHUNHEC"],["003438","ZSZYCZA","招商招怡纯债A","债券型","ZHAOSHANGZHAOYICHUNZHAIA"],["003439","ZSZYCZC","招商招怡纯债C","债券型","ZHAOSHANGZHAOYICHUNZHAIC"],["003440","ZSZXCZA","招商招享纯债A","债券型","ZHAOSHANGZHAOXIANGCHUNZHAIA"],["003441","ZSZXCZC","招商招享纯债C","债券型","ZHAOSHANGZHAOXIANGCHUNZHAIC"],["003442","ZSZHCZA","招商招惠纯债A","债券型","ZHAOSHANGZHAOHUICHUNZHAIA"],["003443","ZSZHCZC","招商招惠纯债C","债券型","ZHAOSHANGZHAOHUICHUNZHAIC"],["003445","ZJFXCZZQ","中加丰享纯债债券","债券型","ZHONGJIAFENGXIANGCHUNZHAIZHAIQUAN"],["003446","YDRXA","英大睿鑫A","混合型","YINGDARUIXINA"],["003447","YDRXC","英大睿鑫C","混合型","YINGDARUIXINC"],["003448","ZSZHCZA","招商招华纯债A","债券型","ZHAOSHANGZHAOHUACHUNZHAIA"],["003449","ZSZHCZC","招商招华纯债C","债券型","ZHAOSHANGZHAOHUACHUNZHAIC"],["003450","ZSZXCZA","招商招信纯债A","债券型","ZHAOSHANGZHAOXINCHUNZHAIA"],["003451","ZSZXCZC","招商招信纯债C","债券型","ZHAOSHANGZHAOXINCHUNZHAIC"],["003452","ZSZSCZA","招商招盛纯债A","债券型","ZHAOSHANGZHAOSHENGCHUNZHAIA"],["003453","ZSZSCZC","招商招盛纯债C","债券型","ZHAOSHANGZHAOSHENGCHUNZHAIC"],["003454","ZSZTCZA","招商招通纯债A","债券型","ZHAOSHANGZHAOTONGCHUNZHAIA"],["003455","ZSZTCZC","招商招通纯债C","债券型","ZHAOSHANGZHAOTONGCHUNZHAIC"],["003456","XDAYXMBHH","信达澳银新目标混合","混合型","XINDAAOYINXINMUBIAOHUNHE"],["003457","GTRTCZZQ","国泰润泰纯债债券","债券型","GUOTAIRUNTAICHUNZHAIZHAIQUAN"],["003458","JSWHZQA","嘉实稳宏债券A","债券型","JIASHIWENHONGZHAIQUANA"],["003459","JSWHZQC","嘉实稳宏债券C","债券型","JIASHIWENHONGZHAIQUANC"],["003460","JSXJB","嘉实现金宝","货币型","JIASHIXIANJINBAO"],["003461","JSWYCZZQ","嘉实稳元纯债债券","债券型","JIASHIWENYUANCHUNZHAIZHAIQUAN"],["003462","XHXSLHPZHH","新华鑫盛灵活配置混合","混合型","XINHUAXINSHENGLINGHUOPEIZHIHUNHE"],["003463","TDHLYZZQQDIIA","泰达宏利亚洲债券(QDII)A","QDII","TAIDAHONGLIYAZHOUZHAIQUANQDIIA"],["003464","TDHLYZZQQDIIC","泰达宏利亚洲债券(QDII)C","QDII","TAIDAHONGLIYAZHOUZHAIQUANQDIIC"],["003465","PADHJGJHB","平安大华金管家货币","货币型","PINGANDAHUAJINGUANJIAHUOBI"],["003466","CCJSAWCZLNDKZ","长城久盛安稳纯债两年定开债","定开债券","CHANGCHENGJIUSHENGANWENCHUNZHAILIANGNIANDINGKAIZHAI"],["003467","FRHBA","富荣货币A","货币型","FURONGHUOBIA"],["003468","FRHBB","富荣货币B","货币型","FURONGHUOBIB"],["003469","DBDJYNDKZA","德邦德景一年定开债A","定开债券","DEBANGDEJINGYINIANDINGKAIZHAIA"],["003470","DBDJYNDKZC","德邦德景一年定开债C","定开债券","DEBANGDEJINGYINIANDINGKAIZHAIC"],["003471","XJQHLHTXZQA","新疆前海联合添鑫债券A","债券型","XINJIANGQIANHAILIANHETIANXINZHAIQUANA"],["003472","XJQHLHTXZQC","新疆前海联合添鑫债券C","债券型","XINJIANGQIANHAILIANHETIANXINZHAIQUANC"],["003473","NFTTLA","南方天天利A","货币型","NANFANGTIANTIANLIA"],["003474","NFTTLB","南方天天利B","货币型","NANFANGTIANTIANLIB"],["003475","XJQHLHHS300ZS","新疆前海联合沪深300指数","股票指数","XINJIANGQIANHAILIANHEHUSHEN300ZHISHU"],["003476","NFAYYL","南方安颐养老","混合型","NANFANGANYIYANGLAO"],["003477","NFRJHH","南方睿见混合","混合型","NANFANGRUIJIANHUNHE"],["003478","MSJYTYBHB","民生加银腾元宝货币","货币型","MINSHENGJIAYINTENGYUANBAOHUOBI"],["003479","CTZGXGJHBA","财通资管鑫管家货币A","货币型","CAITONGZIGUANXINGUANJIAHUOBIA"],["003480","CTZGXGJHBB","财通资管鑫管家货币B","货币型","CAITONGZIGUANXINGUANJIAHUOBIB"],["003481","GDYQBHBB","光大耀钱包货币B","货币型","GUANGDAYAOQIANBAOHUOBIB"],["003482","JYTXBHBA","交银天鑫宝货币A","货币型","JIAOYINTIANXINBAOHUOBIA"],["003483","JYTXBHBE","交银天鑫宝货币E","货币型","JIAOYINTIANXINBAOHUOBIE"],["003484","JYXYHHA","金鹰鑫益混合A","混合型","JINYINGXINYIHUNHEA"],["003485","JYXYHHC","金鹰鑫益混合C","混合型","JINYINGXINYIHUNHEC"],["003486","PADHHLCZ","平安大华惠隆纯债","债券型","PINGANDAHUAHUILONGCHUNZHAI"],["003487","PADHHRCZ","平安大华惠融纯债","债券型","PINGANDAHUAHUIRONGCHUNZHAI"],["003488","PADHHYA","平安大华惠裕A","债券型","PINGANDAHUAHUIYUA"],["003490","CSSPLHPZHHA","长盛盛平灵活配置混合A","混合型","CHANGSHENGSHENGPINGLINGHUOPEIZHIHUNHEA"],["003491","CSSPLHPZHHC","长盛盛平灵活配置混合C","混合型","CHANGSHENGSHENGPINGLINGHUOPEIZHIHUNHEC"],["003492","QHKYWXQYGP","前海开源外向企业股票","股票型","QIANHAIKAIYUANWAIXIANGQIYEGUPIAO"],["003493","SWLXAXYXHHA","申万菱信安鑫优选混合A","混合型","SHENWANLINGXINANXINYOUXUANHUNHEA"],["003494","FGTHCZHHC","富国天惠成长混合C","混合型","FUGUOTIANHUICHENGZHANGHUNHEC"],["003495","PHHSLHPZHHA","鹏华弘尚灵活配置混合A","混合型","PENGHUAHONGSHANGLINGHUOPEIZHIHUNHEA"],["003496","PHHSLHPZHHC","鹏华弘尚灵活配置混合C","混合型","PENGHUAHONGSHANGLINGHUOPEIZHIHUNHEC"],["003497","YHTZDKZ","银华添泽定开债","定开债券","YINHUATIANZEDINGKAIZHAI"],["003498","QHLHTHCZA","前海联合添和纯债A","债券型","QIANHAILIANHETIANHECHUNZHAIA"],["003499","QHLHTHCZC","前海联合添和纯债C","债券型","QIANHAILIANHETIANHECHUNZHAIC"],["003500","XYJLZQ","鑫元聚利债券","债券型","XINYUANJULIZHAIQUAN"],["003501","TDRZWJLHPZHH","泰达睿智稳健灵活配置混合","混合型","TAIDARUIZHIWENJIANLINGHUOPEIZHIHUNHE"],["003502","JYXRHHA","金鹰鑫瑞混合A","混合型","JINYINGXINRUIHUNHEA"],["003503","JYXRHHC","金鹰鑫瑞混合C","混合型","JINYINGXINRUIHUNHEC"],["003504","JSCCJYFLZQA","景顺长城景颐丰利债券A","债券型","JINGSHUNCHANGCHENGJINGYIFENGLIZHAIQUANA"],["003505","JSCCJYFLZQC","景顺长城景颐丰利债券C","债券型","JINGSHUNCHANGCHENGJINGYIFENGLIZHAIQUANC"],["003506","DBXJBA","德邦现金宝A","货币型","DEBANGXIANJINBAOA"],["003507","DBXJBB","德邦现金宝B","货币型","DEBANGXIANJINBAOB"],["003508","HARADKHHA","华安睿安定开混合A","混合型","HUAANRUIANDINGKAIHUNHEA"],["003509","HARADKHHC","华安睿安定开混合C","混合型","HUAANRUIANDINGKAIHUNHEC"],["003510","CSKZZZQA","长盛可转债债券A","债券型","CHANGSHENGKEZHUANZHAIZHAIQUANA"],["003511","CSKZZZQC","长盛可转债债券C","债券型","CHANGSHENGKEZHUANZHAIZHAIQUANC"],["003512","SWLXAXYXHHC","申万菱信安鑫优选混合C","混合型","SHENWANLINGXINANXINYOUXUANHUNHEC"],["003513","ZYXFSJ","中邮消费升级","混合型","ZHONGYOUXIAOFEISHENGJI"],["003514","GSABAXCZ","国寿安保安享纯债","债券型","GUOSHOUANBAOANXIANGCHUNZHAI"],["003515","GTLSBHB","国泰利是宝货币","货币型","GUOTAILISHIBAOHUOBI"],["003516","GTRADCLLHPZHH","国泰融安多策略灵活配置混合","混合型","GUOTAIRONGANDUOCELUELINGHUOPEIZHIHUNHE"],["003517","GTRLCZZQ","国泰润利纯债债券","债券型","GUOTAIRUNLICHUNZHAIZHAIQUAN"],["003518","WJXRCZA","万家鑫瑞纯债A","债券型","WANJIAXINRUICHUNZHAIA"],["003519","WJXRCZE","万家鑫瑞纯债E","债券型","WANJIAXINRUICHUNZHAIE"],["003520","WJXWCZA","万家鑫稳纯债A","债券型","WANJIAXINWENCHUNZHAIA"],["003521","WJXWCZC","万家鑫稳纯债C","债券型","WANJIAXINWENCHUNZHAIC"],["003522","WJXTCZA","万家鑫通纯债A","债券型","WANJIAXINTONGCHUNZHAIA"],["003523","WJXTCZC","万家鑫通纯债C","债券型","WANJIAXINTONGCHUNZHAIC"],["003524","YFDSZCZETFLJ","易方达深证成指ETF联接","联接基金","YIFANGDASHENZHENGCHENGZHIETFLIANJIE"],["003525","HFXJSYHB","华福现金收益货币","货币型","HUAFUXIANJINSHOUYIHUOBI"],["003526","NYJSCZZQ","农银金穗纯债债券","债券型","NONGYINJINSUICHUNZHAIZHAIQUAN"],["003527","PHFTZQ","鹏华丰腾债券","债券型","PENGHUAFENGTENGZHAIQUAN"],["003528","HTFCTLDKZA","汇添富长添利定开债A","定开债券","HUITIANFUCHANGTIANLIDINGKAIZHAIA"],["003529","HTFCTLDKZC","汇添富长添利定开债C","定开债券","HUITIANFUCHANGTIANLIDINGKAIZHAIC"],["003530","DFYX18GYDKZA","东方永熙18个月定开债A","定开债券","DONGFANGYONGXI18GEYUEDINGKAIZHAIA"],["003531","DFYX18GYDKZC","东方永熙18个月定开债C","定开债券","DONGFANGYONGXI18GEYUEDINGKAIZHAIC"],["003532","HTFXLZQA","汇添富鑫利债券A","债券型","HUITIANFUXINLIZHAIQUANA"],["003533","HTFXLZQC","汇添富鑫利债券C","债券型","HUITIANFUXINLIZHAIQUANC"],["003534","PYASRRFHBA","浦银安盛日日丰货币A","货币型","PUYINANSHENGRIRIFENGHUOBIA"],["003535","PYASRRFHBB","浦银安盛日日丰货币B","货币型","PUYINANSHENGRIRIFENGHUOBIB"],["003536","PYASRRFHBD","浦银安盛日日丰货币D","货币型","PUYINANSHENGRIRIFENGHUOBID"],["003537","ZSZLBHBA","招商招利宝货币A","货币型","ZHAOSHANGZHAOLIBAOHUOBIA"],["003538","ZSZLBHBB","招商招利宝货币B","货币型","ZHAOSHANGZHAOLIBAOHUOBIB"],["003539","AXXJZLHBB","安信现金增利货币B","货币型","ANXINXIANJINZENGLIHUOBIB"],["003541","GLARZDKHH","国联安睿智定开混合","混合型","GUOLIANANRUIZHIDINGKAIHUNHE"],["003545","DXXLZQ","东兴兴利债券","债券型","DONGXINGXINGLIZHAIQUAN"],["003546","CCJXZQ","长城久信债券","债券型","CHANGCHENGJIUXINZHAIQUAN"],["003547","PHFLZQ","鹏华丰禄债券","债券型","PENGHUAFENGLUZHAIQUAN"],["003548","TDHLCFDPZSC","泰达宏利财富大盘指数C","股票指数","TAIDAHONGLICAIFUDAPANZHISHUC"],["003549","ZSHYCZ","浙商惠裕纯债","债券型","ZHESHANGHUIYUCHUNZHAI"],["003550","TDGGDLHHC","泰达改革动力混合C","混合型","TAIDAGAIGEDONGLIHUNHEC"],["003551","GYHFCZZQ","工银恒丰纯债债券","债券型","GONGYINHENGFENGCHUNZHAIZHAIQUAN"],["003552","GTXJBHBA","国泰现金宝货币A","货币型","GUOTAIXIANJINBAOHUOBIA"],["003553","GTXJBHBB","国泰现金宝货币B","货币型","GUOTAIXIANJINBAOHUOBIB"],["003554","TDHLDSJHHC","泰达宏利大数据混合C","混合型","TAIDAHONGLIDASHUJUHUNHEC"],["003555","HTBRRLHHA","华泰柏瑞睿利混合A","混合型","HUATAIBAIRUIRUILIHUNHEA"],["003556","HTBRRLHHC","华泰柏瑞睿利混合C","混合型","HUATAIBAIRUIRUILIHUNHEC"],["003557","BSTAZQA","博时泰安债券A","债券型","BOSHITAIANZHAIQUANA"],["003558","BSTAZQC","博时泰安债券C","债券型","BOSHITAIANZHAIQUANC"],["003559","PADHLHCZHHA","平安大华量化成长混合A","混合型","PINGANDAHUALIANGHUACHENGZHANGHUNHEA"],["003560","PADHLHCZHHC","平安大华量化成长混合C","混合型","PINGANDAHUALIANGHUACHENGZHANGHUNHEC"],["003561","NDCZJXA","诺德成长精选A","混合型","NUODECHENGZHANGJINGXUANA"],["003562","NDCZJXC","诺德成长精选C","混合型","NUODECHENGZHANGJINGXUANC"],["003563","GYGJYYMYXH","工银国际原油美元现汇","QDII","GONGYINGUOJIYUANYOUMEIYUANXIANHUI"],["003564","BSAC18GYDKZA","博时安诚18个月定开债A","定开债券","BOSHIANCHENG18GEYUEDINGKAIZHAIA"],["003565","BSAC18GYDKZC","博时安诚18个月定开债C","定开债券","BOSHIANCHENG18GEYUEDINGKAIZHAIC"],["003566","BSZXCZZQ","博时臻选纯债债券","债券型","BOSHIZHENXUANCHUNZHAIZHAIQUAN"],["003567","HXHYJQHH","华夏行业景气混合","混合型","HUAXIAHANGYEJINGQIHUNHE"],["003568","PADHHLCZ","平安大华惠利纯债","债券型","PINGANDAHUAHUILICHUNZHAI"],["003569","ZSZFCZA","招商招丰纯债A","债券型","ZHAOSHANGZHAOFENGCHUNZHAIA"],["003570","ZSZFCZC","招商招丰纯债C","债券型","ZHAOSHANGZHAOFENGCHUNZHAIC"],["003571","ZSZQCZA","招商招琪纯债A","债券型","ZHAOSHANGZHAOQICHUNZHAIA"],["003572","ZSZQCZC","招商招琪纯债C","债券型","ZHAOSHANGZHAOQICHUNZHAIC"],["003573","ZXJTWYDKZ","中信建投稳裕定开债","定开债券","ZHONGXINJIANTOUWENYUDINGKAIZHAI"],["003574","DCHLCZ","大成惠利纯债","债券型","DACHENGHUILICHUNZHAI"],["003575","DCHYCZ","大成惠益纯债","债券型","DACHENGHUIYICHUNZHAI"],["003576","ZSZHCZA","招商招弘纯债A","债券型","ZHAOSHANGZHAOHONGCHUNZHAIA"],["003577","ZSZHCZC","招商招弘纯债C","债券型","ZHAOSHANGZHAOHONGCHUNZHAIC"],["003578","ZJZZ500C","中金中证500C","股票指数","ZHONGJINZHONGZHENG500C"],["003579","ZJHS300C","中金沪深300C","股票指数","ZHONGJINHUSHEN300C"],["003580","TKHGSJZYXHH","泰康沪港深价值优选混合","混合型","TAIKANGHUGANGSHENJIAZHIYOUXUANHUNHE"],["003581","QHLHGMJKHH","前海联合国民健康混合","混合型","QIANHAILIANHEGUOMINJIANKANGHUNHE"],["003582","ZJLHDCLHH","中金量化多策略混合","混合型","ZHONGJINLIANGHUADUOCELUEHUNHE"],["003583","JXWDXLZQA","建信稳定鑫利债券A","债券型","JIANXINWENDINGXINLIZHAIQUANA"],["003584","JXWDXLZQC","建信稳定鑫利债券C","债券型","JIANXINWENDINGXINLIZHAIQUANC"],["003585","XFXJBHB","先锋现金宝货币","货币型","XIANFENGXIANJINBAOHUOBI"],["003586","XFJYHHA","先锋精一混合A","混合型","XIANFENGJINGYIHUNHEA"],["003587","XFJYHHC","先锋精一混合C","混合型","XIANFENGJINGYIHUNHEC"],["003588","DWZXBHBA","东吴增鑫宝货币A","货币型","DONGWUZENGXINBAOHUOBIA"],["003589","DWZXBHBB","东吴增鑫宝货币B","货币型","DONGWUZENGXINBAOHUOBIB"],["003590","JXRFCZZQ","建信睿富纯债债券","债券型","JIANXINRUIFUCHUNZHAIZHAIQUAN"],["003591","HTBRXLHHA","华泰柏瑞享利混合A","混合型","HUATAIBAIRUIXIANGLIHUNHEA"],["003592","HTBRXLHHC","华泰柏瑞享利混合C","混合型","HUATAIBAIRUIXIANGLIHUNHEC"],["003593","GTJQHYLHPZHH","国泰景气行业灵活配置混合","混合型","GUOTAIJINGQIHANGYELINGHUOPEIZHIHUNHE"],["003594","CSSCLHPZHHA","长盛盛崇灵活配置混合A","混合型","CHANGSHENGSHENGCHONGLINGHUOPEIZHIHUNHEA"],["003595","CSSCLHPZHHC","长盛盛崇灵活配置混合C","混合型","CHANGSHENGSHENGCHONGLINGHUOPEIZHIHUNHEC"],["003596","CSSTHHA","长盛盛腾混合A","混合型","CHANGSHENGSHENGTENGHUNHEA"],["003597","CSSTHHC","长盛盛腾混合C","混合型","CHANGSHENGSHENGTENGHUNHEC"],["003598","HSRFLHPZHH","华商润丰灵活配置混合","混合型","HUASHANGRUNFENGLINGHUOPEIZHIHUNHE"],["003601","SWLXAXJXHHA","申万菱信安鑫精选混合A","混合型","SHENWANLINGXINANXINJINGXUANHUNHEA"],["003602","SWLXAXJXHHC","申万菱信安鑫精选混合C","混合型","SHENWANLINGXINANXINJINGXUANHUNHEC"],["003603","JSCCTAHBHHA","景顺长城泰安回报混合A","混合型","JINGSHUNCHANGCHENGTAIANHUIBAOHUNHEA"],["003604","JSCCTAHBHHC","景顺长城泰安回报混合C","混合型","JINGSHUNCHANGCHENGTAIANHUIBAOHUNHEC"],["003605","JSCCJTHLDKZ","景顺长城景泰汇利定开债","定开债券","JINGSHUNCHANGCHENGJINGTAIHUILIDINGKAIZHAI"],["003606","HFTQQSYZQMY","海富通全球收益债券美元","QDII","HAIFUTONGQUANQIUSHOUYIZHAIQUANMEIYUAN"],["003607","BSFYCZZQ","博时富益纯债债券","债券型","BOSHIFUYICHUNZHAIZHAIQUAN"],["003610","NFRAA","南方荣安A","混合型","NANFANGRONGANA"],["003611","NFRAC","南方荣安C","混合型","NANFANGRONGANC"],["003612","NFZYZQA","南方卓元债券A","债券型","NANFANGZHUOYUANZHAIQUANA"],["003613","NFZYZQC","南方卓元债券C","债券型","NANFANGZHUOYUANZHAIQUANC"],["003614","XCJRZQA","信诚景瑞债券A","债券型","XINCHENGJINGRUIZHAIQUANA"],["003615","XCJRZQC","信诚景瑞债券C","债券型","XINCHENGJINGRUIZHAIQUANC"],["003616","ZSZXCZA","招商招熹纯债A","债券型","ZHAOSHANGZHAOXICHUNZHAIA"],["003617","ZSZXCZC","招商招熹纯债C","债券型","ZHAOSHANGZHAOXICHUNZHAIC"],["003618","ZSZWCZA","招商招旺纯债A","债券型","ZHAOSHANGZHAOWANGCHUNZHAIA"],["003619","ZSZWCZC","招商招旺纯债C","债券型","ZHAOSHANGZHAOWANGCHUNZHAIC"],["003622","CJHXYJCZGPA","创金合信优价成长股票A","股票型","CHUANGJINHEXINYOUJIACHENGZHANGGUPIAOA"],["003623","CJHXYJCZGPC","创金合信优价成长股票C","股票型","CHUANGJINHEXINYOUJIACHENGZHANGGUPIAOC"],["003624","CJHXZYGPFQSA","创金合信资源股票发起式A","股票型","CHUANGJINHEXINZIYUANGUPIAOFAQISHIA"],["003625","CJHXZYGPFQSC","创金合信资源股票发起式C","股票型","CHUANGJINHEXINZIYUANGUPIAOFAQISHIC"],["003626","PAXLDK","平安鑫利定开","混合型","PINGANXINLIDINGKAI"],["003627","HFCFYNDKZ","华福长富一年定开债","定开债券","HUAFUCHANGFUYINIANDINGKAIZHAI"],["003628","HFSYZQZQ","华福收益增强债券","债券型","HUAFUSHOUYIZENGQIANGZHAIQUAN"],["003629","STMGQQDYPZRMB","上投摩根全球多元配置人民币","QDII","SHANGTOUMOGENQUANQIUDUOYUANPEIZHIRENMINBI"],["003630","STMGQQDYPZMYXC","上投摩根全球多元配置美元现钞","QDII","SHANGTOUMOGENQUANQIUDUOYUANPEIZHIMEIYUANXIANCHAO"],["003631","STMGQQDYPZMYXH","上投摩根全球多元配置美元现汇","QDII","SHANGTOUMOGENQUANQIUDUOYUANPEIZHIMEIYUANXIANHUI"],["003632","ZSWQDKHHA","招商稳乾定开混合A","混合型","ZHAOSHANGWENQIANDINGKAIHUNHEA"],["003633","ZSWQDKHHC","招商稳乾定开混合C","混合型","ZHAOSHANGWENQIANDINGKAIHUNHEC"],["003634","JSNYCYGP","嘉实农业产业股票","股票型","JIASHINONGYECHANYEGUPIAO"],["003637","AXYXDKZA","安信永鑫定开债A","定开债券","ANXINYONGXINDINGKAIZHAIA"],["003638","AXYXDKZC","安信永鑫定开债C","定开债券","ANXINYONGXINDINGKAIZHAIC"],["003639","GYRYBNDKZQ","工银瑞盈半年定开债券","定开债券","GONGYINRUIYINGBANNIANDINGKAIZHAIQUAN"],["003640","XYYFZQ","兴业裕丰债券","债券型","XINGYEYUFENGZHAIQUAN"],["003641","CSSFLHPZHHA","长盛盛丰灵活配置混合A","混合型","CHANGSHENGSHENGFENGLINGHUOPEIZHIHUNHEA"],["003642","CSSFLHPZHHC","长盛盛丰灵活配置混合C","混合型","CHANGSHENGSHENGFENGLINGHUOPEIZHIHUNHEC"],["003643","GYGZCZZQC","工银国债纯债债券C","债券型","GONGYINGUOZHAICHUNZHAIZHAIQUANC"],["003645","RTTHZQ","融通通弘债券","债券型","RONGTONGTONGHONGZHAIQUAN"],["003646","CJHXZZ1000ZSZQA","创金合信中证1000指数增强A","股票指数","CHUANGJINHEXINZHONGZHENG1000ZHISHUZENGQIANGA"],["003647","CJHXZZ1000ZSZQC","创金合信中证1000指数增强C","股票指数","CHUANGJINHEXINZHONGZHENG1000ZHISHUZENGQIANGC"],["003648","RTTQZQ","融通通祺债券","债券型","RONGTONGTONGQIZHAIQUAN"],["003650","RTTRZQ","融通通润债券","债券型","RONGTONGTONGRUNZHAIQUAN"],["003651","BSFDCZZQ","博时丰达纯债债券","债券型","BOSHIFENGDACHUNZHAIZHAIQUAN"],["003652","ZSZT6GYDKZA","招商招泰6个月定开债A","定开债券","ZHAOSHANGZHAOTAI6GEYUEDINGKAIZHAIA"],["003653","ZSZT6GYDKZC","招商招泰6个月定开债C","定开债券","ZHAOSHANGZHAOTAI6GEYUEDINGKAIZHAIC"],["003654","BSJLCZZQ","博时锦禄纯债债券","债券型","BOSHIJINLUCHUNZHAIZHAIQUAN"],["003655","XDAYXCFHH","信达澳银新财富混合","混合型","XINDAAOYINXINCAIFUHUNHE"],["003656","MSJYXYCZA","民生加银鑫元纯债A","债券型","MINSHENGJIAYINXINYUANCHUNZHAIA"],["003657","MSJYXYCZC","民生加银鑫元纯债C","债券型","MINSHENGJIAYINXINYUANCHUNZHAIC"],["003658","CSLHDCLLHPZHH","长盛量化多策略灵活配置混合","混合型","CHANGSHENGLIANGHUADUOCELUELINGHUOPEIZHIHUNHE"],["003659","SXCLLHPZHH","山西策略灵活配置混合","混合型","SHANXICELUELINGHUOPEIZHIHUNHE"],["003660","ZJCZLNZQA","中加纯债两年债券A","定开债券","ZHONGJIACHUNZHAILIANGNIANZHAIQUANA"],["003661","ZJCZLNZQC","中加纯债两年债券C","定开债券","ZHONGJIACHUNZHAILIANGNIANZHAIQUANC"],["003662","PHYSYNDKZ","鹏华永盛一年定开债","定开债券","PENGHUAYONGSHENGYINIANDINGKAIZHAI"],["003663","PHXTDQKFHH","鹏华兴泰定期开放混合","混合型","PENGHUAXINGTAIDINGQIKAIFANGHUNHE"],["003664","XWTLCZA","新沃通利纯债A","债券型","XINWOTONGLICHUNZHAIA"],["003665","XWTLCZC","新沃通利纯债C","债券型","XINWOTONGLICHUNZHAIC"],["003666","THJMLHPZHH","天弘金明灵活配置混合","混合型","TIANHONGJINMINGLINGHUOPEIZHIHUNHE"],["003667","THAYHH","天弘安盈混合","混合型","TIANHONGANYINGHUNHE"],["003668","DFHYXCZA","东方红益鑫纯债A","债券型","DONGFANGHONGYIXINCHUNZHAIA"],["003669","DFHYXCZC","东方红益鑫纯债C","债券型","DONGFANGHONGYIXINCHUNZHAIC"],["003670","ZRWLWZTLHPZHH","中融物联网主题灵活配置混合","混合型","ZHONGRONGWULIANWANGZHUTILINGHUOPEIZHIHUNHE"],["003671","XYYHZQ","兴业裕恒债券","债券型","XINGYEYUHENGZHAIQUAN"],["003672","XYYHZQ","兴业裕华债券","债券型","XINGYEYUHUAZHAIQUAN"],["003673","ZJFYCZZQ","中加丰裕纯债债券","债券型","ZHONGJIAFENGYUCHUNZHAIZHAIQUAN"],["003674","RTTXZQ","融通通玺债券","债券型","RONGTONGTONGXIZHAIQUAN"],["003675","BSAH18GYDKZA","博时安慧18个月定开债A","定开债券","BOSHIANHUI18GEYUEDINGKAIZHAIA"],["003676","BSAH18GYDKZC","博时安慧18个月定开债C","定开债券","BOSHIANHUI18GEYUEDINGKAIZHAIC"],["003677","RTTSZQ","融通通穗债券","债券型","RONGTONGTONGSUIZHAIQUAN"],["003678","ZRXJZLHBA","中融现金增利货币A","货币型","ZHONGRONGXIANJINZENGLIHUOBIA"],["003679","ZRXJZLHBC","中融现金增利货币C","货币型","ZHONGRONGXIANJINZENGLIHUOBIC"],["003680","HRYDSXZQA","华润元大双鑫债券A","债券型","HUARUNYUANDASHUANGXINZHAIQUANA"],["003681","JXRXCZZQ","建信睿享纯债债券","债券型","JIANXINRUIXIANGCHUNZHAIZHAIQUAN"],["003682","BSAHYNDKZA","博时安弘一年定开债A","定开债券","BOSHIANHONGYINIANDINGKAIZHAIA"],["003683","BSAHYNDKZC","博时安弘一年定开债C","定开债券","BOSHIANHONGYINIANDINGKAIZHAIC"],["003684","HAFRHHA","汇安丰融混合A","混合型","HUIANFENGRONGHUNHEA"],["003685","HAFRHHC","汇安丰融混合C","混合型","HUIANFENGRONGHUNHEC"],["003686","GTFYLHPZHHA","国泰丰益灵活配置混合A","混合型","GUOTAIFENGYILINGHUOPEIZHIHUNHEA"],["003687","GTFYLHPZHHC","国泰丰益灵活配置混合C","混合型","GUOTAIFENGYILINGHUOPEIZHIHUNHEC"],["003689","GTHYLHPZHHA","国泰鸿益灵活配置混合A","混合型","GUOTAIHONGYILINGHUOPEIZHIHUNHEA"],["003690","GTHYLHPZHHC","国泰鸿益灵活配置混合C","混合型","GUOTAIHONGYILINGHUOPEIZHIHUNHEC"],["003691","NYJTYNDKZ","农银金泰一年定开债","定开债券","NONGYINJINTAIYINIANDINGKAIZHAI"],["003692","DCJSLHPZHHA","大成景尚灵活配置混合A","混合型","DACHENGJINGSHANGLINGHUOPEIZHIHUNHEA"],["003693","DCJSLHPZHHC","大成景尚灵活配置混合C","混合型","DACHENGJINGSHANGLINGHUOPEIZHIHUNHEC"],["003694","GTJYLHPZHHA","国泰景益灵活配置混合A","混合型","GUOTAIJINGYILINGHUOPEIZHIHUNHEA"],["003695","GTJYLHPZHHC","国泰景益灵活配置混合C","混合型","GUOTAIJINGYILINGHUOPEIZHIHUNHEC"],["003697","HXRPTSDKHH","华夏睿磐泰盛定开混合","混合型","HUAXIARUIPANTAISHENGDINGKAIHUNHE"],["003698","HXXJXHHA","华夏新锦祥混合A","混合型","HUAXIAXINJINXIANGHUNHEA"],["003699","HXXJXHHC","华夏新锦祥混合C","混合型","HUAXIAXINJINXIANGHUNHEC"],["003702","PAZZHGSGGX","平安中证沪港深高股息","股票指数","PINGANZHONGZHENGHUGANGSHENGAOGUXI"],["003703","BSFXCZ","博时富鑫纯债","债券型","BOSHIFUXINCHUNZHAI"],["003704","GDBDXSJQDHH","光大保德信事件驱动混合","混合型","GUANGDABAODEXINSHIJIANQUDONGHUNHE"],["003705","GYHTCZZQ","工银恒泰纯债债券","债券型","GONGYINHENGTAICHUNZHAIZHAIQUAN"],["003708","BSMFCZA","博时民丰纯债A","债券型","BOSHIMINFENGCHUNZHAIA"],["003709","BSMFCZC","博时民丰纯债C","债券型","BOSHIMINFENGCHUNZHAIC"],["003710","GTRYHSZQ","国投瑞银和顺债券","债券型","GUOTOURUIYINHESHUNZHAIQUAN"],["003711","TDHLJYBHBA","泰达宏利京元宝货币A","货币型","TAIDAHONGLIJINGYUANBAOHUOBIA"],["003712","TDHLJYBHBB","泰达宏利京元宝货币B","货币型","TAIDAHONGLIJINGYUANBAOHUOBIB"],["003713","YDRSA","英大睿盛A","混合型","YINGDARUISHENGA"],["003714","YDRSC","英大睿盛C","混合型","YINGDARUISHENGC"],["003715","BYXFZTHH","宝盈消费主题混合","混合型","BAOYINGXIAOFEIZHUTIHUNHE"],["003716","PADHHYCZ","平安大华惠益纯债","债券型","PINGANDAHUAHUIYICHUNZHAI"],["003717","ZYLHJXHH","中银量化精选混合","混合型","ZHONGYINLIANGHUAJINGXUANHUNHE"],["003718","YFDBP500ZSMYH","易方达标普500指数美元汇","QDII-指数","YIFANGDABIAOPU500ZHISHUMEIYUANHUI"],["003719","YFDBPYLBJMYH","易方达标普医疗保健美元汇","QDII-指数","YIFANGDABIAOPUYILIAOBAOJIANMEIYUANHUI"],["003720","YBPSWKJMYH","易标普生物科技美元汇","QDII-指数","YIBIAOPUSHENGWUKEJIMEIYUANHUI"],["003721","YBPXXKJMYH","易标普信息科技美元汇","QDII-指数","YIBIAOPUXINXIKEJIMEIYUANHUI"],["003723","HRYDSXZQC","华润元大双鑫债券C","债券型","HUARUNYUANDASHUANGXINZHAIQUANC"],["003726","RTTYDKZQA","融通通颐定开债券A","定开债券","RONGTONGTONGYIDINGKAIZHAIQUANA"],["003727","RTTYDKZQC","融通通颐定开债券C","定开债券","RONGTONGTONGYIDINGKAIZHAIQUANC"],["003728","RTTCZQ","融通通宸债券","债券型","RONGTONGTONGCHENZHAIQUAN"],["003730","BSFHCZZQ","博时富华纯债债券","债券型","BOSHIFUHUACHUNZHAIZHAIQUAN"],["003731","CAHZCZZQA","长安泓泽纯债债券A","债券型","CHANGANHONGZECHUNZHAIZHAIQUANA"],["003732","CAHZCZZQC","长安泓泽纯债债券C","债券型","CHANGANHONGZECHUNZHAIZHAIQUANC"],["003733","JYTYCZZQ","金鹰添裕纯债债券","债券型","JINYINGTIANYUCHUNZHAIZHAIQUAN"],["003734","WJRYLHPZHHA","万家瑞盈灵活配置混合A","混合型","WANJIARUIYINGLINGHUOPEIZHIHUNHEA"],["003735","WJRYLHPZHHC","万家瑞盈灵活配置混合C","混合型","WANJIARUIYINGLINGHUOPEIZHIHUNHEC"],["003738","XHHRLHPZHH","新华华瑞灵活配置混合","混合型","XINHUAHUARUILINGHUOPEIZHIHUNHE"],["003739","XHXHLHPZHH","新华鑫弘灵活配置混合","混合型","XINHUAXINHONGLINGHUOPEIZHIHUNHE"],["003741","PHFYZQ","鹏华丰盈债券","债券型","PENGHUAFENGYINGZHAIQUAN"],["003742","HAJHCZZQ","汇安嘉汇纯债债券","债券型","HUIANJIAHUICHUNZHAIZHAIQUAN"],["003743","GFHPYNDKZA","广发汇平一年定开债A","定开债券","GUANGFAHUIPINGYINIANDINGKAIZHAIA"],["003744","GFHPYNDKZC","广发汇平一年定开债C","定开债券","GUANGFAHUIPINGYINIANDINGKAIZHAIC"],["003745","GFDYXXGP","广发多元新兴股票","股票型","GUANGFADUOYUANXINXINGGUPIAO"],["003746","GFHRYNDKZQ","广发汇瑞一年定开债券","定开债券","GUANGFAHUIRUIYINIANDINGKAIZHAIQUAN"],["003747","WJXXCZA","万家鑫享纯债A","债券型","WANJIAXINXIANGCHUNZHAIA"],["003748","WJXXCZC","万家鑫享纯债C","债券型","WANJIAXINXIANGCHUNZHAIC"],["003749","CJHXXSYHHA","创金合信鑫收益混合A","混合型","CHUANGJINHEXINXINSHOUYIHUNHEA"],["003750","CJHXXSYHHC","创金合信鑫收益混合C","混合型","CHUANGJINHEXINXINSHOUYIHUNHEC"],["003751","WJRLLHPZHH","万家瑞隆灵活配置混合","混合型","WANJIARUILONGLINGHUOPEIZHIHUNHE"],["003752","GYRYHBA","工银如意货币A","货币型","GONGYINRUYIHUOBIA"],["003753","GYRYHBB","工银如意货币B","货币型","GONGYINRUYIHUOBIB"],["003754","GTPYHHA","国泰普益混合A","混合型","GUOTAIPUYIHUNHEA"],["003755","GTPYHHC","国泰普益混合C","混合型","GUOTAIPUYIHUNHEC"],["003756","GTJYLHPZHHA","国泰嘉益灵活配置混合A","混合型","GUOTAIJIAYILINGHUOPEIZHIHUNHEA"],["003757","GTJYLHPZHHC","国泰嘉益灵活配置混合C","混合型","GUOTAIJIAYILINGHUOPEIZHIHUNHEC"],["003762","GKKTLHPZHHA","国开开泰灵活配置混合A","混合型","GUOKAIKAITAILINGHUOPEIZHIHUNHEA"],["003763","GKKTLHPZHHC","国开开泰灵活配置混合C","混合型","GUOKAIKAITAILINGHUOPEIZHIHUNHEC"],["003767","TDHLCLZQA","泰达宏利纯利债券A","债券型","TAIDAHONGLICHUNLIZHAIQUANA"],["003768","TDHLCLZQC","泰达宏利纯利债券C","债券型","TAIDAHONGLICHUNLIZHAIQUANC"],["003769","ZYPZSHHH","中银品质生活混合","混合型","ZHONGYINPINZHISHENGHUOHUNHE"],["003770","ZYFQDQKFZQ","中银丰庆定期开放债券","定开债券","ZHONGYINFENGQINGDINGQIKAIFANGZHAIQUAN"],["003772","GLAXSHHA","国联安鑫盛混合A","混合型","GUOLIANANXINSHENGHUNHEA"],["003773","GLAXSHHC","国联安鑫盛混合C","混合型","GUOLIANANXINSHENGHUNHEC"],["003774","GLAXLHHA","国联安鑫利混合A","混合型","GUOLIANANXINLIHUNHEA"],["003775","GLAXLHHC","国联安鑫利混合C","混合型","GUOLIANANXINLIHUNHEC"],["003776","NFXLDKZA","南方宣利定开债A","定开债券","NANFANGXUANLIDINGKAIZHAIA"],["003777","NFXLDKZC","南方宣利定开债C","定开债券","NANFANGXUANLIDINGKAIZHAIC"],["003778","STARHBA","上投安瑞回报A","混合型","SHANGTOUANRUIHUIBAOA"],["003779","STARHBC","上投安瑞回报C","混合型","SHANGTOUANRUIHUIBAOC"],["003780","PHXYDQKFHH","鹏华兴悦定期开放混合","混合型","PENGHUAXINGYUEDINGQIKAIFANGHUNHE"],["003781","PHXYDQKFHH","鹏华兴裕定期开放混合","混合型","PENGHUAXINGYUDINGQIKAIFANGHUNHE"],["003782","ZSWYDKHHA","招商稳阳定开混合A","混合型","ZHAOSHANGWENYANGDINGKAIHUNHEA"],["003783","ZSWYDKHHC","招商稳阳定开混合C","混合型","ZHAOSHANGWENYANGDINGKAIHUNHEC"],["003784","ZSWTDKHH","招商稳泰定开混合","混合型","ZHAOSHANGWENTAIDINGKAIHUNHE"],["003787","FZFBHLCZA","方正富邦惠利纯债A","债券型","FANGZHENGFUBANGHUILICHUNZHAIA"],["003788","FZFBHLCZC","方正富邦惠利纯债C","债券型","FANGZHENGFUBANGHUILICHUNZHAIC"],["003789","GYFYYNDKZQ","工银丰益一年定开债券","定开债券","GONGYINFENGYIYINIANDINGKAIZHAIQUAN"],["003793","TDHLYLZQA","泰达宏利溢利债券A","债券型","TAIDAHONGLIYILIZHAIQUANA"],["003794","TDHLYLZQC","泰达宏利溢利债券C","债券型","TAIDAHONGLIYILIZHAIQUANC"],["003795","FZFBRLCZA","方正富邦睿利纯债A","债券型","FANGZHENGFUBANGRUILICHUNZHAIA"],["003796","FZFBRLCZC","方正富邦睿利纯债C","债券型","FANGZHENGFUBANGRUILICHUNZHAIC"],["003797","HAXRLHHA","华安新瑞利混合A","混合型","HUAANXINRUILIHUNHEA"],["003798","HAXRLHHC","华安新瑞利混合C","混合型","HUAANXINRUILIHUNHEC"],["003799","HAXTLLHPZHHA","华安新泰利灵活配置混合A","混合型","HUAANXINTAILILINGHUOPEIZHIHUNHEA"],["003800","HAXTLLHPZHHC","华安新泰利灵活配置混合C","混合型","HUAANXINTAILILINGHUOPEIZHIHUNHEC"],["003801","HAXAPHHA","华安新安平混合A","混合型","HUAANXINANPINGHUNHEA"],["003802","HAXAPHHC","华安新安平混合C","混合型","HUAANXINANPINGHUNHEC"],["003803","HAXFLLHPZHHA","华安新丰利灵活配置混合A","混合型","HUAANXINFENGLILINGHUOPEIZHIHUNHEA"],["003804","HAXFLLHPZHHC","华安新丰利灵活配置混合C","混合型","HUAANXINFENGLILINGHUOPEIZHIHUNHEC"],["003805","HAXHLHHA","华安新恒利混合A","混合型","HUAANXINHENGLIHUNHEA"],["003806","HAXHLHHC","华安新恒利混合C","混合型","HUAANXINHENGLIHUNHEC"],["003807","NFRYXNXDKHHA","南方荣优鑫年享定开混合A","混合型","NANFANGRONGYOUXINNIANXIANGDINGKAIHUNHEA"],["003808","NFRYXNXDKHHC","南方荣优鑫年享定开混合C","混合型","NANFANGRONGYOUXINNIANXIANGDINGKAIHUNHEC"],["003809","ZSZSCZA","招商招顺纯债A","债券型","ZHAOSHANGZHAOSHUNCHUNZHAIA"],["003810","ZSZSCZC","招商招顺纯债C","债券型","ZHAOSHANGZHAOSHUNCHUNZHAIC"],["003811","ZJJLA","中金金利A","债券型","ZHONGJINJINLIA"],["003812","ZJJLC","中金金利C","债券型","ZHONGJINJINLIC"],["003813","TKJT3YDKHH","泰康金泰3月定开混合","混合型","TAIKANGJINTAI3YUEDINGKAIHUNHE"],["003814","YHSZ10NQGZA","银华上证10年期国债A","债券指数","YINHUASHANGZHENG10NIANQIGUOZHAIA"],["003815","YHSZ10NQGZC","银华上证10年期国债C","债券指数","YINHUASHANGZHENG10NIANQIGUOZHAIC"],["003816","YHRLB","银华日利B","货币型","YINHUARILIB"],["003817","YHSZ5NQGZZSA","银华上证5年期国债指数A","债券指数","YINHUASHANGZHENG5NIANQIGUOZHAIZHISHUA"],["003818","YHSZ5NQGZZSC","银华上证5年期国债指数C","债券指数","YINHUASHANGZHENG5NIANQIGUOZHAIZHISHUC"],["003819","GFJHCZ","广发景华纯债","债券型","GUANGFAJINGHUACHUNZHAI"],["003820","HXXJHHHA","华夏新锦鸿混合A","混合型","HUAXIAXINJINHONGHUNHEA"],["003821","HXXJHHHC","华夏新锦鸿混合C","混合型","HUAXIAXINJINHONGHUNHEC"],["003824","THXLZQA","天弘信利债券A","债券型","TIANHONGXINLIZHAIQUANA"],["003825","THXLZQC","天弘信利债券C","债券型","TIANHONGXINLIZHAIQUANC"],["003826","HXDHZQA","华夏鼎汇债券A","债券型","HUAXIADINGHUIZHAIQUANA"],["003827","HXDHZQC","华夏鼎汇债券C","债券型","HUAXIADINGHUIZHAIQUANC"],["003828","PHXHDQKFHH","鹏华兴惠定期开放混合","混合型","PENGHUAXINGHUIDINGQIKAIFANGHUNHE"],["003830","JXXYHBLHPZHH","建信鑫悦回报灵活配置混合","混合型","JIANXINXINYUEHUIBAOLINGHUOPEIZHIHUNHE"],["003831","JXXRHBLHPZHH","建信鑫瑞回报灵活配置混合","混合型","JIANXINXINRUIHUIBAOLINGHUOPEIZHIHUNHE"],["003832","ZYFRDQKFZQ","中银丰润定期开放债券","定开债券","ZHONGYINFENGRUNDINGQIKAIFANGZHAIQUAN"],["003833","JYTFCZZQ","金鹰添富纯债债券","债券型","JINYINGTIANFUCHUNZHAIZHAIQUAN"],["003835","PHHSGXXCZHH","鹏华沪深港新兴成长混合","混合型","PENGHUAHUSHENGANGXINXINGCHENGZHANGHUNHE"],["003836","XWXXZQ","新沃鑫禧债券","债券型","XINWOXINXIZHAIQUAN"],["003837","DFZXCZZQA","东方臻享纯债债券A","债券型","DONGFANGZHENXIANGCHUNZHAIZHAIQUANA"],["003838","DFZXCZZQC","东方臻享纯债债券C","债券型","DONGFANGZHENXIANGCHUNZHAIZHAIQUANC"],["003839","YFDRTLHPZHHA","易方达瑞通灵活配置混合A","混合型","YIFANGDARUITONGLINGHUOPEIZHIHUNHEA"],["003840","YFDRTLHPZHHC","易方达瑞通灵活配置混合C","混合型","YIFANGDARUITONGLINGHUOPEIZHIHUNHEC"],["003841","DCHYDKCZZQ","大成惠裕定开纯债债券","定开债券","DACHENGHUIYUDINGKAICHUNZHAIZHAIQUAN"],["003842","ZYJTLHPZHHA","中邮景泰灵活配置混合A","混合型","ZHONGYOUJINGTAILINGHUOPEIZHIHUNHEA"],["003843","ZYJTLHPZHHC","中邮景泰灵活配置混合C","混合型","ZHONGYOUJINGTAILINGHUOPEIZHIHUNHEC"],["003845","HAFHLHPZHHA","汇安丰恒灵活配置混合A","混合型","HUIANFENGHENGLINGHUOPEIZHIHUNHEA"],["003846","HAFHLHPZHHC","汇安丰恒灵活配置混合C","混合型","HUIANFENGHENGLINGHUOPEIZHIHUNHEC"],["003847","HADFZQ","华安鼎丰债券","债券型","HUAANDINGFENGZHAIQUAN"],["003848","ZYGLLHPZHHA","中银广利灵活配置混合A","混合型","ZHONGYINGUANGLILINGHUOPEIZHIHUNHEA"],["003849","ZYGLLHPZHHC","中银广利灵活配置混合C","混合型","ZHONGYINGUANGLILINGHUOPEIZHIHUNHEC"],["003850","ZYJLLHPZHHA","中银锦利灵活配置混合A","混合型","ZHONGYINJINLILINGHUOPEIZHIHUNHEA"],["003851","ZYJLLHPZHHC","中银锦利灵活配置混合C","混合型","ZHONGYINJINLILINGHUOPEIZHIHUNHEC"],["003852","JYTXCZZQ","金鹰添享纯债债券","债券型","JINYINGTIANXIANGCHUNZHAIZHAIQUAN"],["003853","JYTHCZZQ","金鹰添惠纯债债券","债券型","JINYINGTIANHUICHUNZHAIZHAIQUAN"],["003854","HAFHHHA","汇安丰华混合A","混合型","HUIANFENGHUAHUNHEA"],["003855","HAFHHHC","汇安丰华混合C","混合型","HUIANFENGHUAHUNHEC"],["003856","GDJXDQKFHH","国都聚鑫定期开放混合","混合型","GUODOUJUXINDINGQIKAIFANGHUNHE"],["003857","QHKYZQYXHHA","前海开源周期优选混合A","混合型","QIANHAIKAIYUANZHOUQIYOUXUANHUNHEA"],["003858","QHKYZQYXHHC","前海开源周期优选混合C","混合型","QIANHAIKAIYUANZHOUQIYOUXUANHUNHEC"],["003859","ZSZXCZA","招商招旭纯债A","债券型","ZHAOSHANGZHAOXUCHUNZHAIA"],["003860","ZSZXCZC","招商招旭纯债C","债券型","ZHAOSHANGZHAOXUCHUNZHAIC"],["003861","ZSXFHHA","招商兴福混合A","混合型","ZHAOSHANGXINGFUHUNHEA"],["003862","ZSXFHHC","招商兴福混合C","混合型","ZHAOSHANGXINGFUHUNHEC"],["003863","ZSZXCZA","招商招祥纯债A","债券型","ZHAOSHANGZHAOXIANGCHUNZHAIA"],["003864","ZSZXCZC","招商招祥纯债C","债券型","ZHAOSHANGZHAOXIANGCHUNZHAIC"],["003865","CJHXLHDYZGPC","创金合信量化多因子股票C","股票型","CHUANGJINHEXINLIANGHUADUOYINZIGUPIAOC"],["003866","BSFCCZZQ","博时富诚纯债债券","债券型","BOSHIFUCHENGCHUNZHAIZHAIQUAN"],["003867","ZSZJCZA","招商招景纯债A","债券型","ZHAOSHANGZHAOJINGCHUNZHAIA"],["003868","ZSZJCZC","招商招景纯债C","债券型","ZHAOSHANGZHAOJINGCHUNZHAIC"],["003871","HTBRTTBHBB","华泰柏瑞天添宝货币B","货币型","HUATAIBAIRUITIANTIANBAOHUOBIB"],["003874","ZSRTJHBA","浙商日添金货币A","货币型","ZHESHANGRITIANJINHUOBIA"],["003875","ZSRTJHBB","浙商日添金货币B","货币型","ZHESHANGRITIANJINHUOBIB"],["003876","HBHS300ZQ","华宝沪深300增强","股票指数","HUABAOHUSHEN300ZENGQIANG"],["003877","FGJLWJPZHHA","富国久利稳健配置混合A","混合型","FUGUOJIULIWENJIANPEIZHIHUNHEA"],["003878","FGJLWJPZHHC","富国久利稳健配置混合C","混合型","FUGUOJIULIWENJIANPEIZHIHUNHEC"],["003880","JSDQB6GYLCZQA","嘉实定期宝6个月理财债券A","理财型","JIASHIDINGQIBAO6GEYUELICAIZHAIQUANA"],["003881","JSDQB6GYLCZQB","嘉实定期宝6个月理财债券B","理财型","JIASHIDINGQIBAO6GEYUELICAIZHAIQUANB"],["003882","YFDRHHHA","易方达瑞弘混合A","混合型","YIFANGDARUIHONGHUNHEA"],["003883","YFDRHHHC","易方达瑞弘混合C","混合型","YIFANGDARUIHONGHUNHEC"],["003884","HAFTLHPZHHA","汇安丰泰灵活配置混合A","混合型","HUIANFENGTAILINGHUOPEIZHIHUNHEA"],["003885","HAFTLHPZHHC","汇安丰泰灵活配置混合C","混合型","HUIANFENGTAILINGHUOPEIZHIHUNHEC"],["003886","HAFLHHA","汇安丰利混合A","混合型","HUIANFENGLIHUNHEA"],["003887","HAFLHHC","汇安丰利混合C","混合型","HUIANFENGLIHUNHEC"],["003888","HAJYCZZQ","汇安嘉源纯债债券","债券型","HUIANJIAYUANCHUNZHAIZHAIQUAN"],["003889","HAFZHHA","汇安丰泽混合A","混合型","HUIANFENGZEHUNHEA"],["003890","HAFZHHC","汇安丰泽混合C","混合型","HUIANFENGZEHUNHEC"],["003891","HAJYCZZQ","汇安嘉裕纯债债券","债券型","HUIANJIAYUCHUNZHAIZHAIQUAN"],["003892","PHPTZQ","鹏华普泰债券","债券型","PENGHUAPUTAIZHAIQUAN"],["003895","AXXSYLHPZHHA","安信新视野灵活配置混合A","混合型","ANXINXINSHIYELINGHUOPEIZHIHUNHEA"],["003896","AXXSYLHPZHHC","安信新视野灵活配置混合C","混合型","ANXINXINSHIYELINGHUOPEIZHIHUNHEC"],["003898","YYFYZQ","永赢丰益债券","债券型","YONGYINGFENGYIZHAIQUAN"],["003899","GTMHSYDKZ","国泰民惠收益定开债","定开债券","GUOTAIMINHUISHOUYIDINGKAIZHAI"],["003900","JYRXDKHH","交银瑞鑫定开混合","混合型","JIAOYINRUIXINDINGKAIHUNHE"],["003901","JYRJDKHH","交银瑞景定开混合","混合型","JIAOYINRUIJINGDINGKAIHUNHE"],["003902","DBRJZQA","德邦锐璟债券A","债券型","DEBANGRUIJINGZHAIQUANA"],["003903","DBRJZQC","德邦锐璟债券C","债券型","DEBANGRUIJINGZHAIQUANC"],["003906","HXXJTHHA","华夏新锦图混合A","混合型","HUAXIAXINJINTUHUNHEA"],["003907","HXXJTHHC","华夏新锦图混合C","混合型","HUAXIAXINJINTUHUNHEC"],["003908","WJJTZQA","万家家泰债券A","债券型","WANJIAJIATAIZHAIQUANA"],["003909","WJJTZQC","万家家泰债券C","债券型","WANJIAJIATAIZHAIQUANC"],["003910","WJJSZQA","万家家盛债券A","债券型","WANJIAJIASHENGZHAIQUANA"],["003911","WJJSZQC","万家家盛债券C","债券型","WANJIAJIASHENGZHAIQUANC"],["003912","TDHLQFHHA","泰达宏利启富混合A","混合型","TAIDAHONGLIQIFUHUNHEA"],["003913","TDHLQFHHC","泰达宏利启富混合C","混合型","TAIDAHONGLIQIFUHUNHEC"],["003914","TDHLQDLHPZHHA","泰达宏利启迪灵活配置混合A","混合型","TAIDAHONGLIQIDILINGHUOPEIZHIHUNHEA"],["003915","TDHLQDLHPZHHC","泰达宏利启迪灵活配置混合C","混合型","TAIDAHONGLIQIDILINGHUOPEIZHIHUNHEC"],["003916","TDHLQZLHPZHHA","泰达宏利启泽灵活配置混合A","混合型","TAIDAHONGLIQIZELINGHUOPEIZHIHUNHEA"],["003917","TDHLQZLHPZHHC","泰达宏利启泽灵活配置混合C","混合型","TAIDAHONGLIQIZELINGHUOPEIZHIHUNHEC"],["003918","TDHLQMLHPZHHA","泰达宏利启明灵活配置混合A","混合型","TAIDAHONGLIQIMINGLINGHUOPEIZHIHUNHEA"],["003919","TDHLQMLHPZHHC","泰达宏利启明灵活配置混合C","混合型","TAIDAHONGLIQIMINGLINGHUOPEIZHIHUNHEC"],["003922","CSSKLHPZHHA","长盛盛康灵活配置混合A","混合型","CHANGSHENGSHENGKANGLINGHUOPEIZHIHUNHEA"],["003923","CSSKLHPZHHC","长盛盛康灵活配置混合C","混合型","CHANGSHENGSHENGKANGLINGHUOPEIZHIHUNHEC"],["003924","CSSTLHPZHHA","长盛盛泰灵活配置混合A","混合型","CHANGSHENGSHENGTAILINGHUOPEIZHIHUNHEA"],["003925","CSSTLHPZHHC","长盛盛泰灵活配置混合C","混合型","CHANGSHENGSHENGTAILINGHUOPEIZHIHUNHEC"],["003929","ZYZQAJZQA","中银证券安进债券A","债券型","ZHONGYINZHENGQUANANJINZHAIQUANA"],["003930","ZYZQAJZQC","中银证券安进债券C","债券型","ZHONGYINZHENGQUANANJINZHAIQUANC"],["003936","NFHLA","南方和利A","定开债券","NANFANGHELIA"],["003937","NFHLC","南方和利C","定开债券","NANFANGHELIC"],["003940","YHSSJXLHPZHHFQS","银华盛世精选灵活配置混合发起式","混合型","YINHUASHENGSHIJINGXUANLINGHUOPEIZHIHUNHEFAQISHI"],["003941","GTXYLHPZHHA","国泰鑫益灵活配置混合A","混合型","GUOTAIXINYILINGHUOPEIZHIHUNHEA"],["003942","GTXYLHPZHHC","国泰鑫益灵活配置混合C","混合型","GUOTAIXINYILINGHUOPEIZHIHUNHEC"],["003943","GTZYLHPZHHA","国泰泽益灵活配置混合A","混合型","GUOTAIZEYILINGHUOPEIZHIHUNHEA"],["003944","GTZYLHPZHHC","国泰泽益灵活配置混合C","混合型","GUOTAIZEYILINGHUOPEIZHIHUNHEC"],["003945","GTZYLHPZHHA","国泰众益灵活配置混合A","混合型","GUOTAIZHONGYILINGHUOPEIZHIHUNHEA"],["003946","GTZYLHPZHHC","国泰众益灵活配置混合C","混合型","GUOTAIZHONGYILINGHUOPEIZHIHUNHEC"],["003947","BSJXCZZQ","博时聚享纯债债券","债券型","BOSHIJUXIANGCHUNZHAIZHAIQUAN"],["003949","XQWTZQ","兴全稳泰债券","债券型","XINGQUANWENTAIZHAIQUAN"],["003950","BSXRHHA","博时鑫润混合A","混合型","BOSHIXINRUNHUNHEA"],["003951","BSXRHHC","博时鑫润混合C","混合型","BOSHIXINRUNHUNHEC"],["003952","XY18GYDKZA","兴业18个月定开债A","定开债券","XINGYE18GEYUEDINGKAIZHAIA"],["003953","XY18GYDKZC","兴业18个月定开债C","定开债券","XINGYE18GEYUEDINGKAIZHAIC"],["003954","HTBRJZJX30HH","华泰柏瑞价值精选30混合","混合型","HUATAIBAIRUIJIAZHIJINGXUAN30HUNHE"],["003955","GTMFHBDKHH","国泰民丰回报定开混合","混合型","GUOTAIMINFENGHUIBAODINGKAIHUNHE"],["003956","NFJYGP","南方教育股票","股票型","NANFANGJIAOYUGUPIAO"],["003957","AXXQDHHA","安信新起点混合A","混合型","ANXINXINQIDIANHUNHEA"],["003958","AXXQDHHC","安信新起点混合C","混合型","ANXINXINQIDIANHUNHEC"],["003959","PADHLHHHA","平安大华量化混合A","混合型","PINGANDAHUALIANGHUAHUNHEA"],["003960","PADHLHHHC","平安大华量化混合C","混合型","PINGANDAHUALIANGHUAHUNHEC"],["003961","YFDRCLHPZHHA","易方达瑞程灵活配置混合A","混合型","YIFANGDARUICHENGLINGHUOPEIZHIHUNHEA"],["003962","YFDRCLHPZHHC","易方达瑞程灵活配置混合C","混合型","YIFANGDARUICHENGLINGHUOPEIZHIHUNHEC"],["003963","BSHXCZZQ","博时慧选纯债债券","债券型","BOSHIHUIXUANCHUNZHAIZHAIQUAN"],["003964","HXXJLHHA","华夏新锦略混合A","混合型","HUAXIAXINJINLUEHUNHEA"],["003965","HXXJLHHC","华夏新锦略混合C","混合型","HUAXIAXINJINLUEHUNHEC"],["003966","ZYRLHHA","中银润利混合A","混合型","ZHONGYINRUNLIHUNHEA"],["003967","ZYRLHHC","中银润利混合C","混合型","ZHONGYINRUNLIHUNHEC"],["003968","JYTYBHBA","交银天益宝货币A","货币型","JIAOYINTIANYIBAOHUOBIA"],["003969","JYTYBHBE","交银天益宝货币E","货币型","JIAOYINTIANYIBAOHUOBIE"],["003970","HTBRXLHHA","华泰柏瑞兴利混合A","混合型","HUATAIBAIRUIXINGLIHUNHEA"],["003971","HTBRXLHHC","华泰柏瑞兴利混合C","混合型","HUATAIBAIRUIXINGLIHUNHEC"],["003972","GFMYZDKZRMB","国富美元债定开债人民币","QDII","GUOFUMEIYUANZHAIDINGKAIZHAIRENMINBI"],["003973","GFMYZDKZMYXH","国富美元债定开债美元现汇","QDII","GUOFUMEIYUANZHAIDINGKAIZHAIMEIYUANXIANHUI"],["003974","ZXJTRTLHPZHHA","中信建投睿泰灵活配置混合A","混合型","ZHONGXINJIANTOURUITAILINGHUOPEIZHIHUNHEA"],["003975","ZXJTRTLHPZHHC","中信建投睿泰灵活配置混合C","混合型","ZHONGXINJIANTOURUITAILINGHUOPEIZHIHUNHEC"],["003976","ZXJTWHZQA","中信建投稳惠债券A","债券型","ZHONGXINJIANTOUWENHUIZHAIQUANA"],["003977","ZXJTWHZQC","中信建投稳惠债券C","债券型","ZHONGXINJIANTOUWENHUIZHAIQUANC"],["003978","ZXJTWXA","中信建投稳祥A","债券型","ZHONGXINJIANTOUWENXIANGA"],["003979","ZXJTWXC","中信建投稳祥C","债券型","ZHONGXINJIANTOUWENXIANGC"],["003980","ZYZQRYHHA","中银证券瑞益混合A","混合型","ZHONGYINZHENGQUANRUIYIHUNHEA"],["003981","ZYZQRYHHC","中银证券瑞益混合C","混合型","ZHONGYINZHENGQUANRUIYIHUNHEC"],["003982","GTRYSYCZZQ","国投瑞银顺益纯债债券","债券型","GUOTOURUIYINSHUNYICHUNZHAIZHAIQUAN"],["003983","PHFHZQ","鹏华丰惠债券","债券型","PENGHUAFENGHUIZHAIQUAN"],["003984","JSXNYXCLGPA","嘉实新能源新材料股票A","股票型","JIASHIXINNENGYUANXINCAILIAOGUPIAOA"],["003985","JSXNYXCLGPC","嘉实新能源新材料股票C","股票型","JIASHIXINNENGYUANXINCAILIAOGUPIAOC"],["003986","SWLXZZ500ZSYXZQ","申万菱信中证500指数优选增强","股票指数","SHENWANLINGXINZHONGZHENG500ZHISHUYOUXUANZENGQIANG"],["003991","FGFLWJPZHHA","富国富利稳健配置混合A","混合型","FUGUOFULIWENJIANPEIZHIHUNHEA"],["003992","FGFLWJPZHHC","富国富利稳健配置混合C","混合型","FUGUOFULIWENJIANPEIZHIHUNHEC"],["003993","QHKYHGSHXQDHH","前海开源沪港深核心驱动混合","混合型","QIANHAIKAIYUANHUGANGSHENHEXINQUDONGHUNHE"],["003999","FRFXCZ","富荣富祥纯债","债券型","FURONGFUXIANGCHUNZHAI"],["004000","TDRXWJHH","泰达睿选稳健混合","混合型","TAIDARUIXUANWENJIANHUNHE"],["004001","TDHLHLZQA","泰达宏利恒利债券A","债券型","TAIDAHONGLIHENGLIZHAIQUANA"],["004002","TDHLHLZQC","泰达宏利恒利债券C","债券型","TAIDAHONGLIHENGLIZHAIQUANC"],["004003","TDHLQHLHPZHHA","泰达宏利启惠灵活配置混合A","混合型","TAIDAHONGLIQIHUILINGHUOPEIZHIHUNHEA"],["004004","TDHLQHLHPZHHC","泰达宏利启惠灵活配置混合C","混合型","TAIDAHONGLIQIHUILINGHUOPEIZHIHUNHEC"],["004005","DFMFHBYADKHHA","东方民丰回报赢安定开混合A","混合型","DONGFANGMINFENGHUIBAOYINGANDINGKAIHUNHEA"],["004006","DFMFHBYADKHHC","东方民丰回报赢安定开混合C","混合型","DONGFANGMINFENGHUIBAOYINGANDINGKAIHUNHEC"],["004008","ZRXSLHHA","中融鑫思路混合A","混合型","ZHONGRONGXINSILUHUNHEA"],["004009","ZRXSLHHC","中融鑫思路混合C","混合型","ZHONGRONGXINSILUHUNHEC"],["004010","HTBRDLLHPZHHA","华泰柏瑞鼎利灵活配置混合A","混合型","HUATAIBAIRUIDINGLILINGHUOPEIZHIHUNHEA"],["004011","HTBRDLLHPZHHC","华泰柏瑞鼎利灵活配置混合C","混合型","HUATAIBAIRUIDINGLILINGHUOPEIZHIHUNHEC"],["004012","HTBRYLHHA","华泰柏瑞裕利混合A","混合型","HUATAIBAIRUIYULIHUNHEA"],["004013","HTBRYLHHC","华泰柏瑞裕利混合C","混合型","HUATAIBAIRUIYULIHUNHEC"],["004014","HTBRJLHHA","华泰柏瑞锦利混合A","混合型","HUATAIBAIRUIJINLIHUNHEA"],["004015","HTBRJLHHC","华泰柏瑞锦利混合C","混合型","HUATAIBAIRUIJINLIHUNHEC"],["004018","ZSXHLHPZHHA","招商兴华灵活配置混合A","混合型","ZHAOSHANGXINGHUALINGHUOPEIZHIHUNHEA"],["004019","ZSXHLHPZHHC","招商兴华灵活配置混合C","混合型","ZHAOSHANGXINGHUALINGHUOPEIZHIHUNHEC"],["004020","GFJXCZ","广发景祥纯债","债券型","GUANGFAJINGXIANGCHUNZHAI"],["004021","GFHFYNDQZQA","广发汇富一年定期债券A","定开债券","GUANGFAHUIFUYINIANDINGQIZHAIQUANA"],["004022","GFHFYNDQZQC","广发汇富一年定期债券C","定开债券","GUANGFAHUIFUYINIANDINGQIZHAIQUANC"],["004024","HTBXZCYNDKZ","华泰保兴尊诚一年定开债","定开债券","HUATAIBAOXINGZUNCHENGYINIANDINGKAIZHAI"],["004027","GFJYCZA","广发景源纯债A","债券型","GUANGFAJINGYUANCHUNZHAIA"],["004028","GFJYCZC","广发景源纯债C","债券型","GUANGFAJINGYUANCHUNZHAIC"],["004029","JSWKCZZQ","嘉实稳康纯债债券","债券型","JIASHIWENKANGCHUNZHAIZHAIQUAN"],["004030","JSFA6GYDQZQ","嘉实丰安6个月定期债券","定开债券","JIASHIFENGAN6GEYUEDINGQIZHAIQUAN"],["004031","XYTLZQ","鑫元添利债券","债券型","XINYUANTIANLIZHAIQUAN"],["004032","GYFCBNDKZQ","工银丰淳半年定开债券","定开债券","GONGYINFENGCHUNBANNIANDINGKAIZHAIQUAN"],["004033","JYTRCZZQ","金鹰添荣纯债债券","债券型","JINYINGTIANRONGCHUNZHAIZHAIQUAN"],["004034","BSHK18GYDKZA","博时弘康18个月定开债A","定开债券","BOSHIHONGKANG18GEYUEDINGKAIZHAIA"],["004035","BSHK18GYDKZC","博时弘康18个月定开债C","定开债券","BOSHIHONGKANG18GEYUEDINGKAIZHAIC"],["004036","PHHZLHPZHHA","鹏华弘樽灵活配置混合A","混合型","PENGHUAHONGZUNLINGHUOPEIZHIHUNHEA"],["004037","PHHZLHPZHHC","鹏华弘樽灵活配置混合C","混合型","PENGHUAHONGZUNLINGHUOPEIZHIHUNHEC"],["004038","ZYFXZQ","中银富享债券","债券型","ZHONGYINFUXIANGZHAIQUAN"],["004039","ZOJTHB","中欧骏泰货币","货币型","ZHONGOUJUNTAIHUOBI"],["004042","HXDMZQA","华夏鼎茂债券A","债券型","HUAXIADINGMAOZHAIQUANA"],["004043","HXDMZQC","华夏鼎茂债券C","债券型","HUAXIADINGMAOZHAIQUANC"],["004045","JYTRCZZQ","金鹰添润纯债债券","债券型","JINYINGTIANRUNCHUNZHAIZHAIQUAN"],["004046","HXXJSHHA","华夏新锦顺混合A","混合型","HUAXIAXINJINSHUNHUNHEA"],["004047","HXXJSHHC","华夏新锦顺混合C","混合型","HUAXIAXINJINSHUNHUNHEC"],["004048","HXXJHHHA","华夏新锦汇混合A","混合型","HUAXIAXINJINHUIHUNHEA"],["004049","HXXJHHHC","华夏新锦汇混合C","混合型","HUAXIAXINJINHUIHUNHEC"],["004052","HXDZZQA","华夏鼎智债券A","债券型","HUAXIADINGZHIZHAIQUANA"],["004053","HXDZZQC","华夏鼎智债券C","债券型","HUAXIADINGZHIZHAIQUANC"],["004054","HXDSZQA","华夏鼎实债券A","债券型","HUAXIADINGSHIZHAIQUANA"],["004055","HXDSZQC","华夏鼎实债券C","债券型","HUAXIADINGSHIZHAIQUANC"],["004056","HXHLHBA","华夏惠利货币A","货币型","HUAXIAHUILIHUOBIA"],["004059","XYZLZQ","鑫元招利债券","债券型","XINYUANZHAOLIZHAIQUAN"],["004060","BSXSHB","博时兴盛货币","货币型","BOSHIXINGSHENGHUOBI"],["004061","HXDLZQA","华夏鼎隆债券A","债券型","HUAXIADINGLONGZHAIQUANA"],["004062","HXDLZQC","华夏鼎隆债券C","债券型","HUAXIADINGLONGZHAIQUANC"],["004063","HXHRYNDKZ","华夏恒融一年定开债","定开债券","HUAXIAHENGRONGYINIANDINGKAIZHAI"],["004064","JYRLDQKFLHPZHH","交银瑞利定期开放灵活配置混合","混合型","JIAOYINRUILIDINGQIKAIFANGLINGHUOPEIZHIHUNHE"],["004065","ZRLHDYZHH","中融量化多因子混合","混合型","ZHONGRONGLIANGHUADUOYINZIHUNHE"],["004066","JSWXCZZQ","嘉实稳熙纯债债券","债券型","JIASHIWENXICHUNZHAIZHAIQUAN"],["004067","ZRXHBHHA","中融鑫回报混合A","混合型","ZHONGRONGXINHUIBAOHUNHEA"],["004068","ZRXHBHHC","中融鑫回报混合C","混合型","ZHONGRONGXINHUIBAOHUNHEC"],["004069","NFZZQZZQETFLJA","南方中证全指证券ETF联接A","联接基金","NANFANGZHONGZHENGQUANZHIZHENGQUANETFLIANJIEA"],["004070","NFZZQZZQETFLJC","南方中证全指证券ETF联接C","联接基金","NANFANGZHONGZHENGQUANZHIZHENGQUANETFLIANJIEC"],["004072","JYSAJTBHBA","金元顺安金通宝货币A","货币型","JINYUANSHUNANJINTONGBAOHUOBIA"],["004073","JYSAJTBHBB","金元顺安金通宝货币B","货币型","JINYUANSHUNANJINTONGBAOHUOBIB"],["004074","JYRADQKFLHPZHH","交银瑞安定期开放灵活配置混合","混合型","JIAOYINRUIANDINGQIKAIFANGLINGHUOPEIZHIHUNHE"],["004075","JYYYCXGP","交银医药创新股票","股票型","JIAOYINYIYAOCHUANGXINGUPIAO"],["004076","GLARYCZHH","国联安锐意成长混合","混合型","GUOLIANANRUIYICHENGZHANGHUNHE"],["004077","JXMFHBA","金信民发货币A","货币型","JINXINMINFAHUOBIA"],["004078","JXMFHBB","金信民发货币B","货币型","JINXINMINFAHUOBIB"],["004079","WJXFCZA","万家鑫丰纯债A","债券型","WANJIAXINFENGCHUNZHAIA"],["004080","WJXFCZC","万家鑫丰纯债C","债券型","WANJIAXINFENGCHUNZHAIC"],["004081","GLAXQHHA","国联安鑫乾混合A","混合型","GUOLIANANXINQIANHUNHEA"],["004082","GLAXQHHC","国联安鑫乾混合C","混合型","GUOLIANANXINQIANHUNHEC"],["004083","GLAXLHHA","国联安鑫隆混合A","混合型","GUOLIANANXINLONGHUNHEA"],["004084","GLAXLHHC","国联安鑫隆混合C","混合型","GUOLIANANXINLONGHUNHEC"],["004085","GYGZ710NZSA","工银国债(7-10年)指数A","债券指数","GONGYINGUOZHAI710NIANZHISHUA"],["004086","GYGZ710NZSC","工银国债(7-10年)指数C","债券指数","GONGYINGUOZHAI710NIANZHISHUC"],["004087","YHTRDQKFZQ","银华添润定期开放债券","定开债券","YINHUATIANRUNDINGQIKAIFANGZHAIQUAN"],["004089","HTFXRZQA","汇添富鑫瑞债券A","债券型","HUITIANFUXINRUIZHAIQUANA"],["004090","HTFXRZQC","汇添富鑫瑞债券C","债券型","HUITIANFUXINRUIZHAIQUANC"],["004091","BSHGSJZYXA","博时沪港深价值优选A","混合型","BOSHIHUGANGSHENJIAZHIYOUXUANA"],["004092","BSHGSJZYXC","博时沪港深价值优选C","混合型","BOSHIHUGANGSHENJIAZHIYOUXUANC"],["004093","JYSAASZQ","金元顺安桉盛债券","债券型","JINYUANSHUNANANSHENGZHAIQUAN"],["004094","ZSFCLHHHA","招商丰诚灵活混合A","混合型","ZHAOSHANGFENGCHENGLINGHUOHUNHEA"],["004095","ZSFCLHHHC","招商丰诚灵活混合C","混合型","ZHAOSHANGFENGCHENGLINGHUOHUNHEC"],["004096","PHXKDQKFHH","鹏华兴康定期开放混合","混合型","PENGHUAXINGKANGDINGQIKAIFANGHUNHE"],["004097","NYHLRRXJYXHBA","农银汇理日日鑫交易型货币A","货币型","NONGYINHUILIRIRIXINJIAOYIXINGHUOBIA"],["004099","QHKYHGSJQHYJXHH","前海开源沪港深景气行业精选混合","混合型","QIANHAIKAIYUANHUGANGSHENJINGQIHANGYEJINGXUANHUNHE"],["004100","PHAYZQHH","鹏华安益增强混合","混合型","PENGHUAANYIZENGQIANGHUNHE"],["004102","XCWYZQA","信诚稳悦债券A","债券型","XINCHENGWENYUEZHAIQUANA"],["004103","XCWYZQC","信诚稳悦债券C","债券型","XINCHENGWENYUEZHAIQUANC"],["004104","XCWXA","信诚稳鑫A","债券型","XINCHENGWENXINA"],["004105","XCWXC","信诚稳鑫C","债券型","XINCHENGWENXINC"],["004106","XCWFA","信诚稳丰A","债券型","XINCHENGWENFENGA"],["004107","XCWFC","信诚稳丰C","债券型","XINCHENGWENFENGC"],["004108","XCWTA","信诚稳泰A","债券型","XINCHENGWENTAIA"],["004109","XCWTC","信诚稳泰C","债券型","XINCHENGWENTAIC"],["004112","CJHXGQHLHH","创金合信国企活力混合","混合型","CHUANGJINHEXINGUOQIHUOLIHUNHE"],["004113","HTBRTLHHA","华泰柏瑞泰利混合A","混合型","HUATAIBAIRUITAILIHUNHEA"],["004114","HTBRTLHHC","华泰柏瑞泰利混合C","混合型","HUATAIBAIRUITAILIHUNHEC"],["004115","JSXTCHH","嘉实新添程混合","混合型","JIASHIXINTIANCHENGHUNHE"],["004116","JSXTRHH","嘉实新添瑞混合","混合型","JIASHIXINTIANRUIHUNHE"],["004117","DCHXDKCZZQ","大成惠祥定开纯债债券","定开债券","DACHENGHUIXIANGDINGKAICHUNZHAIZHAIQUAN"],["004118","BSYPCZZQ","博时裕鹏纯债债券","债券型","BOSHIYUPENGCHUNZHAIZHAIQUAN"],["004119","GFCXQDLHPZHH","广发创新驱动灵活配置混合","混合型","GUANGFACHUANGXINQUDONGLINGHUOPEIZHIHUNHE"],["004121","HFXJTL","华福现金添利","货币型","HUAFUXIANJINTIANLI"],["004122","HFCYDKZ","华福长益定开债","定开债券","HUAFUCHANGYIDINGKAIZHAI"],["004123","HFCYDKZ","华福长盈定开债","定开债券","HUAFUCHANGYINGDINGKAIZHAI"],["004124","MSJYXSCZ","民生加银鑫升纯债","债券型","MINSHENGJIAYINXINSHENGCHUNZHAI"],["004126","PYASWJZLZQA","浦银安盛稳健增利债券A","债券型","PUYINANSHENGWENJIANZENGLIZHAIQUANA"],["004127","PHFKZQ","鹏华丰康债券","债券型","PENGHUAFENGKANGZHAIQUAN"],["004129","GLAXHHHA","国联安鑫汇混合A","混合型","GUOLIANANXINHUIHUNHEA"],["004130","GLAXHHHC","国联安鑫汇混合C","混合型","GUOLIANANXINHUIHUNHEC"],["004131","GLAXFHHA","国联安鑫发混合A","混合型","GUOLIANANXINFAHUNHEA"],["004132","GLAXFHHC","国联安鑫发混合C","混合型","GUOLIANANXINFAHUNHEC"],["004133","ZHHXBHB","中航航行宝货币","货币型","ZHONGHANGHANGXINGBAOHUOBI"],["004134","NYJA18GYDKZ","农银金安18个月定开债","定开债券","NONGYINJINAN18GEYUEDINGKAIZHAI"],["004135","SWLXLHCZHH","申万菱信量化成长混合","混合型","SHENWANLINGXINLIANGHUACHENGZHANGHUNHE"],["004136","BSMZCZZQ","博时民泽纯债债券","债券型","BOSHIMINZECHUNZHAIZHAIQUAN"],["004137","BSHHHB","博时合惠货币","货币型","BOSHIHEHUIHUOBI"],["004138","SYXDHH","上银鑫达混合","混合型","SHANGYINXINDAHUNHE"],["004139","ZYJMRHLHPZHH","中邮军民融合灵活配置混合","混合型","ZHONGYOUJUNMINRONGHELINGHUOPEIZHIHUNHE"],["004140","XYFXZQ","兴业福鑫债券","债券型","XINGYEFUXINZHAIQUAN"],["004141","XYRF6GYDKZ","兴业瑞丰6个月定开债","定开债券","XINGYERUIFENG6GEYUEDINGKAIZHAI"],["004142","ZSSHLHHHA","招商盛合灵活混合A","混合型","ZHAOSHANGSHENGHELINGHUOHUNHEA"],["004143","ZSSHLHHHC","招商盛合灵活混合C","混合型","ZHAOSHANGSHENGHELINGHUOHUNHEC"],["004144","STAFHBA","上投安丰回报A","混合型","SHANGTOUANFENGHUIBAOA"],["004145","STAFHBC","上投安丰回报C","混合型","SHANGTOUANFENGHUIBAOC"],["004146","STAZHBHHA","上投安泽回报混合A","混合型","SHANGTOUANZEHUIBAOHUNHEA"],["004147","STAZHBHHC","上投安泽回报混合C","混合型","SHANGTOUANZEHUIBAOHUNHEC"],["004148","YXYFDCL","圆信永丰多策略","混合型","YUANXINYONGFENGDUOCELUE"],["004149","BSXHHHA","博时鑫惠混合A","混合型","BOSHIXINHUIHUNHEA"],["004150","BSXHHHC","博时鑫惠混合C","混合型","BOSHIXINHUIHUNHEC"],["004151","XFRTLA","先锋日添利A","货币型","XIANFENGRITIANLIA"],["004152","XFRTLB","先锋日添利B","货币型","XIANFENGRITIANLIB"],["004153","XCXYHBLHPZHHA","信诚新悦回报灵活配置混合A","混合型","XINCHENGXINYUEHUIBAOLINGHUOPEIZHIHUNHEA"],["004154","XCXYHBLHPZHHB","信诚新悦回报灵活配置混合B","混合型","XINCHENGXINYUEHUIBAOLINGHUOPEIZHIHUNHEB"],["004155","XCZTLHPZHHA","信诚至泰灵活配置混合A","混合型","XINCHENGZHITAILINGHUOPEIZHIHUNHEA"],["004156","XCZTLHPZHHC","信诚至泰灵活配置混合C","混合型","XINCHENGZHITAILINGHUOPEIZHIHUNHEC"],["004157","XCZCLHPZHHA","信诚至诚灵活配置混合A","混合型","XINCHENGZHICHENGLINGHUOPEIZHIHUNHEA"],["004158","XCZCLHPZHHB","信诚至诚灵活配置混合B","混合型","XINCHENGZHICHENGLINGHUOPEIZHIHUNHEB"],["004159","ZOTQZQA","中欧天启债券A","定开债券","ZHONGOUTIANQIZHAIQUANA"],["004160","ZOTQZQC","中欧天启债券C","定开债券","ZHONGOUTIANQIZHAIQUANC"],["004165","BXRFZQHB","北信瑞丰增强回报","混合型","BEIXINRUIFENGZENGQIANGHUIBAO"],["004167","AXHQBHBB","安信活期宝货币B","货币型","ANXINHUOQIBAOHUOBIB"],["004168","BSFJCZZQ","博时富嘉纯债债券","债券型","BOSHIFUJIACHUNZHAIZHAIQUAN"],["004169","WJXJZLHBA","万家现金增利货币A","货币型","WANJIAXIANJINZENGLIHUOBIA"],["004170","WJXJZLHBB","万家现金增利货币B","货币型","WANJIAXIANJINZENGLIHUOBIB"],["004171","XCYYYNDKHHA","信诚永益一年定开混合A","混合型","XINCHENGYONGYIYINIANDINGKAIHUNHEA"],["004172","XCYYYNDKHHC","信诚永益一年定开混合C","混合型","XINCHENGYONGYIYINIANDINGKAIHUNHEC"],["004173","JSZYBHB","嘉实增益宝货币","货币型","JIASHIZENGYIBAOHUOBI"],["004175","BSXTHHA","博时鑫泰混合A","混合型","BOSHIXINTAIHUNHEA"],["004176","BSXTHHC","博时鑫泰混合C","混合型","BOSHIXINTAIHUNHEC"],["004177","PADHHYC","平安大华惠裕C","债券型","PINGANDAHUAHUIYUC"],["004178","YXYFFRHBA","圆信永丰丰润货币A","货币型","YUANXINYONGFENGFENGRUNHUOBIA"],["004179","YXYFFRHBB","圆信永丰丰润货币B","货币型","YUANXINYONGFENGFENGRUNHUOBIB"],["004180","NFHYZQA","南方宏元债券A","债券型","NANFANGHONGYUANZHAIQUANA"],["004181","NFHYZQC","南方宏元债券C","债券型","NANFANGHONGYUANZHAIQUANC"],["004187","JHRJDKHHA","嘉合睿金定开混合A","混合型","JIAHERUIJINDINGKAIHUNHEA"],["004188","JHRJDKHHC","嘉合睿金定开混合C","混合型","JIAHERUIJINDINGKAIHUNHEC"],["004189","HSMYHLLHPZHH","华商民营活力灵活配置混合","混合型","HUASHANGMINYINGHUOLILINGHUOPEIZHIHUNHE"],["004190","ZSHS300ZSZQA","招商沪深300指数增强A","股票指数","ZHAOSHANGHUSHEN300ZHISHUZENGQIANGA"],["004191","ZSHS300ZSZQC","招商沪深300指数增强C","股票指数","ZHAOSHANGHUSHEN300ZHISHUZENGQIANGC"],["004192","ZSZZ500ZSA","招商中证500指数A","股票指数","ZHAOSHANGZHONGZHENG500ZHISHUA"],["004193","ZSZZ500ZSC","招商中证500指数C","股票指数","ZHAOSHANGZHONGZHENG500ZHISHUC"],["004194","ZSZZ1000ZSZQA","招商中证1000指数增强A","股票指数","ZHAOSHANGZHONGZHENG1000ZHISHUZENGQIANGA"],["004195","ZSZZ1000ZSZQC","招商中证1000指数增强C","股票指数","ZHAOSHANGZHONGZHENG1000ZHISHUZENGQIANGC"],["004198","HFTYHBA","华富天益货币A","货币型","HUAFUTIANYIHUOBIA"],["004199","HFTYHBB","华富天益货币B","货币型","HUAFUTIANYIHUOBIB"],["004200","BSFRCZZQ","博时富瑞纯债债券","债券型","BOSHIFURUICHUNZHAIZHAIQUAN"],["004201","HXCFBHBB","华夏财富宝货币B","货币型","HUAXIACAIFUBAOHUOBIB"],["004203","STMGSSJDKZA","上投摩根岁岁金定开债A","定开债券","SHANGTOUMOGENSUISUIJINDINGKAIZHAIA"],["004204","STMGSSJDKZC","上投摩根岁岁金定开债C","定开债券","SHANGTOUMOGENSUISUIJINDINGKAIZHAIC"],["004206","HSYHLHPZHH","华商元亨灵活配置混合","混合型","HUASHANGYUANHENGLINGHUOPEIZHIHUNHE"],["004207","JYQTLHPZHHA","交银启通灵活配置混合A","混合型","JIAOYINQITONGLINGHUOPEIZHIHUNHEA"],["004208","JYQTLHPZHHC","交银启通灵活配置混合C","混合型","JIAOYINQITONGLINGHUOPEIZHIHUNHEC"],["004209","DCZHLHDCLHH","大成智惠量化多策略混合","混合型","DACHENGZHIHUILIANGHUADUOCELUEHUNHE"],["004210","QHKYHBE","前海开源货币E","货币型","QIANHAIKAIYUANHUOBIE"],["004212","ZRLHZXHH","中融量化智选混合","混合型","ZHONGRONGLIANGHUAZHIXUANHUNHE"],["004213","ZOJYHB","中欧骏益货币","货币型","ZHONGOUJUNYIHUOBI"],["004214","FZFBXLBHBA","方正富邦鑫利宝货币A","货币型","FANGZHENGFUBANGXINLIBAOHUOBIA"],["004215","FZFBXLBHBB","方正富邦鑫利宝货币B","货币型","FANGZHENGFUBANGXINLIBAOHUOBIB"],["004216","XYARHBA","兴业安润货币A","货币型","XINGYEANRUNHUOBIA"],["004217","XYARHBB","兴业安润货币B","货币型","XINGYEANRUNHUOBIB"],["004218","QHKYYHDQKFHH","前海开源裕和定期开放混合","混合型","QIANHAIKAIYUANYUHEDINGQIKAIFANGHUNHE"],["004219","ZHTSDQKFHH","中海添顺定期开放混合","混合型","ZHONGHAITIANSHUNDINGQIKAIFANGHUNHE"],["004220","CXCZYHZQC","长信纯债壹号债券C","债券型","CHANGXINCHUNZHAIYIHAOZHAIQUANC"],["004221","CXLHXFHHC","长信量化先锋混合C","混合型","CHANGXINLIANGHUAXIANFENGHUNHEC"],["004223","JXDCLJXLHPZ","金信多策略精选灵活配置","混合型","JINXINDUOCELUEJINGXUANLINGHUOPEIZHI"],["004224","NFJGGGLHPZHH","南方军工改革灵活配置混合","混合型","NANFANGJUNGONGGAIGELINGHUOPEIZHIHUNHE"],["004225","GSABWCHHA","国寿安保稳诚混合A","混合型","GUOSHOUANBAOWENCHENGHUNHEA"],["004226","GSABWCHHC","国寿安保稳诚混合C","混合型","GUOSHOUANBAOWENCHENGHUNHEC"],["004229","PHXNYCYHH","鹏华新能源产业混合","混合型","PENGHUAXINNENGYUANCHANYEHUNHE"],["004230","YYTYZQ","永赢添益债券","债券型","YONGYINGTIANYIZHAIQUAN"],["004231","ZOHYCZHHLOFC","中欧行业成长混合(LOF)C","混合型","ZHONGOUHANGYECHENGZHANGHUNHELOFC"],["004232","ZOJZFXHHC","中欧价值发现混合C","混合型","ZHONGOUJIAZHIFAXIANHUNHEC"],["004233","ZOSSCZHHLOFC","中欧盛世成长混合(LOF)C","混合型","ZHONGOUSHENGSHICHENGZHANGHUNHELOFC"],["004234","ZOSJWJHHC","中欧数据挖掘混合C","混合型","ZHONGOUSHUJUWAJUEHUNHEC"],["004235","ZOJZZXHHC","中欧价值智选混合C","混合型","ZHONGOUJIAZHIZHIXUANHUNHEC"],["004236","ZOXDLHHLOFC","中欧新动力混合(LOF)C","混合型","ZHONGOUXINDONGLIHUNHELOFC"],["004237","ZOXLCHHC","中欧新蓝筹混合C","混合型","ZHONGOUXINLANCHOUHUNHEC"],["004238","YYRYZQ","永赢瑞益债券","债券型","YONGYINGRUIYIZHAIQUAN"],["004241","ZOSDXFGPC","中欧时代先锋股票C","股票型","ZHONGOUSHIDAIXIANFENGGUPIAOC"],["004242","XYZYSNDKZQ","兴业增益三年定开债券","定开债券","XINGYEZENGYISANNIANDINGKAIZHAIQUAN"],["004243","GFDQSSYZSC","广发道琼斯石油指数C","QDII-指数","GUANGFADAOQIONGSISHIYOUZHISHUC"],["004244","DFZQYXLHPZHH","东方周期优选灵活配置混合","混合型","DONGFANGZHOUQIYOUXUANLINGHUOPEIZHIHUNHE"],["004246","DBRQZQA","德邦锐乾债券A","债券型","DEBANGRUIQIANZHAIQUANA"],["004247","DBRQZQC","德邦锐乾债券C","债券型","DEBANGRUIQIANZHAIQUANC"],["004248","HBXDLHH","华宝新动力混合","混合型","HUABAOXINDONGLIHUNHE"],["004249","AXZGZZ2025HH","安信中国制造2025混合","混合型","ANXINZHONGGUOZHIZAO2025HUNHE"],["004250","YHLHYXHH","银河量化优选混合","混合型","YINHELIANGHUAYOUXUANHUNHE"],["004251","HXHLHBB","华夏惠利货币B","货币型","HUAXIAHUILIHUOBIB"],["004252","GTAYLHPZHHC","国泰安益灵活配置混合C","混合型","GUOTAIANYILINGHUOPEIZHIHUNHEC"],["004254","MSJYHXYNDKZA","民生加银汇鑫一年定开债A","定开债券","MINSHENGJIAYINHUIXINYINIANDINGKAIZHAIA"],["004255","MSJYHXYNDKZC","民生加银汇鑫一年定开债C","定开债券","MINSHENGJIAYINHUIXINYINIANDINGKAIZHAIC"],["004256","MSJYHXYNDKZD","民生加银汇鑫一年定开债D","定开债券","MINSHENGJIAYINHUIXINYINIANDINGKAIZHAID"],["004258","GSABWJHHA","国寿安保稳嘉混合A","混合型","GUOSHOUANBAOWENJIAHUNHEA"],["004259","GSABWJHHC","国寿安保稳嘉混合C","混合型","GUOSHOUANBAOWENJIAHUNHEC"],["004260","DBWYZZLHPZHH","德邦稳盈增长灵活配置混合","混合型","DEBANGWENYINGZENGZHANGLINGHUOPEIZHIHUNHE"],["004261","ZSZXBHBA","招商招禧宝货币A","货币型","ZHAOSHANGZHAOXIBAOHUOBIA"],["004262","ZSZXBHBB","招商招禧宝货币B","货币型","ZHAOSHANGZHAOXIBAOHUOBIB"],["004264","HFTRHCZ","海富通瑞合纯债","债券型","HAIFUTONGRUIHECHUNZHAI"],["004266","ZSHGSKJCXHH","招商沪港深科技创新混合","混合型","ZHAOSHANGHUGANGSHENKEJICHUANGXINHUNHE"],["004267","JYCJZLZQLOFE","金鹰持久增利债券(LOF)E","债券型","JINYINGCHIJIUZENGLIZHAIQUANLOFE"],["004268","ZXJTRKA","中信建投睿康A","混合型","ZHONGXINJIANTOURUIKANGA"],["004269","ZXJTRKC","中信建投睿康C","混合型","ZHONGXINJIANTOURUIKANGC"],["004276","PYAHHBDKHHA","浦银安和回报定开混合A","混合型","PUYINANHEHUIBAODINGKAIHUNHEA"],["004277","PYAHHBDKHHC","浦银安和回报定开混合C","混合型","PUYINANHEHUIBAODINGKAIHUNHEC"],["004279","GSABWRHHA","国寿安保稳荣混合A","混合型","GUOSHOUANBAOWENRONGHUNHEA"],["004280","GSABWRHHC","国寿安保稳荣混合C","混合型","GUOSHOUANBAOWENRONGHUNHEC"],["004281","HBXHBYNDKHH","华宝新回报一年定开混合","混合型","HUABAOXINHUIBAOYINIANDINGKAIHUNHE"],["004282","BSXRHB","博时兴荣货币","货币型","BOSHIXINGRONGHUOBI"],["004283","ZODAYNDKHH","中欧达安一年定开混合","混合型","ZHONGOUDAANYINIANDINGKAIHUNHE"],["004284","HBXYXDKHH","华宝新优选定开混合","混合型","HUABAOXINYOUXUANDINGKAIHUNHE"],["004285","HFTYHBA","华富天盈货币A","货币型","HUAFUTIANYINGHUOBIA"],["004286","HFTYHBB","华富天盈货币B","货币型","HUAFUTIANYINGHUOBIB"],["004287","GTRYAYDCLHH","国投瑞银安颐多策略混合","混合型","GUOTOURUIYINANYIDUOCELUEHUNHE"],["004289","BSXCFHHC","博时新财富混合C","混合型","BOSHIXINCAIFUHUNHEC"],["004292","PHHSGHLWGP","鹏华沪深港互联网股票","股票型","PENGHUAHUSHENGANGHULIANWANGGUPIAO"],["004295","ZOTSDKZQA","中欧天尚定开债券A","定开债券","ZHONGOUTIANSHANGDINGKAIZHAIQUANA"],["004296","ZOTSDKZQC","中欧天尚定开债券C","定开债券","ZHONGOUTIANSHANGDINGKAIZHAIQUANC"],["004297","CSSCLHPZHHA","长盛盛淳灵活配置混合A","混合型","CHANGSHENGSHENGCHUNLINGHUOPEIZHIHUNHEA"],["004298","CSSCLHPZHHC","长盛盛淳灵活配置混合C","混合型","CHANGSHENGSHENGCHUNLINGHUOPEIZHIHUNHEC"],["004299","CSSZHHA","长盛盛泽混合A","混合型","CHANGSHENGSHENGZEHUNHEA"],["004300","CSSZHHC","长盛盛泽混合C","混合型","CHANGSHENGSHENGZEHUNHEC"],["004301","GSABWXHHA","国寿安保稳信混合A","混合型","GUOSHOUANBAOWENXINHUNHEA"],["004302","GSABWXHHC","国寿安保稳信混合C","混合型","GUOSHOUANBAOWENXINHUNHEC"],["004303","CSSDLHPZHHA","长盛盛德灵活配置混合A","混合型","CHANGSHENGSHENGDELINGHUOPEIZHIHUNHEA"],["004304","CSSDLHPZHHC","长盛盛德灵活配置混合C","混合型","CHANGSHENGSHENGDELINGHUOPEIZHIHUNHEC"],["004305","CSSXLHPZHHA","长盛盛禧灵活配置混合A","混合型","CHANGSHENGSHENGXILINGHUOPEIZHIHUNHEA"],["004306","CSSXLHPZHHC","长盛盛禧灵活配置混合C","混合型","CHANGSHENGSHENGXILINGHUOPEIZHIHUNHEC"],["004307","BSFYCZZQ","博时富元纯债债券","债券型","BOSHIFUYUANCHUNZHAIZHAIQUAN"],["004308","CSSXLHPZHHA","长盛盛享灵活配置混合A","混合型","CHANGSHENGSHENGXIANGLINGHUOPEIZHIHUNHEA"],["004309","CSSXLHPZHHC","长盛盛享灵活配置混合C","混合型","CHANGSHENGSHENGXIANGLINGHUOPEIZHIHUNHEC"],["004310","CSSRLHPZHHA","长盛盛瑞灵活配置混合A","混合型","CHANGSHENGSHENGRUILINGHUOPEIZHIHUNHEA"],["004311","CSSRLHPZHHC","长盛盛瑞灵活配置混合C","混合型","CHANGSHENGSHENGRUILINGHUOPEIZHIHUNHEC"],["004312","CSSXHHA","长盛盛兴混合A","混合型","CHANGSHENGSHENGXINGHUNHEA"],["004313","CSSXHHC","长盛盛兴混合C","混合型","CHANGSHENGSHENGXINGHUNHEC"],["004314","QHKYHGSXYJA","前海开源沪港深新硬件A","混合型","QIANHAIKAIYUANHUGANGSHENXINYINGJIANA"],["004315","QHKYHGSXYJC","前海开源沪港深新硬件C","混合型","QIANHAIKAIYUANHUGANGSHENXINYINGJIANC"],["004316","QHKYHGSYXA","前海开源沪港深裕鑫A","混合型","QIANHAIKAIYUANHUGANGSHENYUXINA"],["004317","QHKYHGSYXC","前海开源沪港深裕鑫C","混合型","QIANHAIKAIYUANHUGANGSHENYUXINC"],["004318","GSABZYYHHBZQA","国寿安保尊裕优化回报债券A","债券型","GUOSHOUANBAOZUNYUYOUHUAHUIBAOZHAIQUANA"],["004319","GSABZYYHHBZQC","国寿安保尊裕优化回报债券C","债券型","GUOSHOUANBAOZUNYUYOUHUAHUIBAOZHAIQUANC"],["004320","QHKYHGSLXSH","前海开源沪港深乐享生活","混合型","QIANHAIKAIYUANHUGANGSHENLEXIANGSHENGHUO"],["004321","QHKYHGSQGCYHH","前海开源沪港深强国产业混合","混合型","QIANHAIKAIYUANHUGANGSHENQIANGGUOCHANYEHUNHE"],["004322","CJHXZLCZ","创金合信尊隆纯债","债券型","CHUANGJINHEXINZUNLONGCHUNZHAI"],["004323","BSFHCZ","博时富海纯债","债券型","BOSHIFUHAICHUNZHAI"],["004326","GLAXYHHA","国联安鑫怡混合A","混合型","GUOLIANANXINYIHUNHEA"],["004327","GLAXYHHC","国联安鑫怡混合C","混合型","GUOLIANANXINYIHUNHEC"],["004328","XCYXDKHHA","信诚永鑫定开混合A","混合型","XINCHENGYONGXINDINGKAIHUNHEA"],["004329","XCYXDKHHC","信诚永鑫定开混合C","混合型","XINCHENGYONGXINDINGKAIHUNHEC"],["004330","TPRRXHBA","太平日日鑫货币A","货币型","TAIPINGRIRIXINHUOBIA"],["004331","TPRRXHBB","太平日日鑫货币B","货币型","TAIPINGRIRIXINHUOBIB"],["004332","HSHGSXXCYJXHH","恒生沪港深新兴产业精选混合","混合型","HENGSHENGHUGANGSHENXINXINGCHANYEJINGXUANHUNHE"],["004333","JYYSZQXFQSE","金鹰元盛债券型发起式E","债券型","JINYINGYUANSHENGZHAIQUANXINGFAQISHIE"],["004334","BSGLCZ","博时广利纯债","债券型","BOSHIGUANGLICHUNZHAI"],["004335","HBXFYLHPZHH","华宝新飞跃灵活配置混合","混合型","HUABAOXINFEIYUELINGHUOPEIZHIHUNHE"],["004336","CSSQLHPZHHA","长盛盛乾灵活配置混合A","混合型","CHANGSHENGSHENGQIANLINGHUOPEIZHIHUNHEA"],["004337","CSSQLHPZHHC","长盛盛乾灵活配置混合C","混合型","CHANGSHENGSHENGQIANLINGHUOPEIZHIHUNHEC"],["004338","CSSHHHA","长盛盛弘混合A","混合型","CHANGSHENGSHENGHONGHUNHEA"],["004339","CSSHHHC","长盛盛弘混合C","混合型","CHANGSHENGSHENGHONGHUNHEC"],["004341","NYHLJDKJHH","农银汇理尖端科技混合","混合型","NONGYINHUILIJIANDUANKEJIHUNHE"],["004342","NFKYHS300ETFLJC","南方开元沪深300ETF联接C","联接基金","NANFANGKAIYUANHUSHEN300ETFLIANJIEC"],["004343","NFCYBETFLJC","南方创业板ETF联接C","联接基金","NANFANGCHUANGYEBANETFLIANJIEC"],["004344","NFDSJ100C","南方大数据100C","股票指数","NANFANGDASHUJU100C"],["004345","NFSZCFETFLJC","南方深证成份ETF联接C","联接基金","NANFANGSHENZHENGCHENGFENETFLIANJIEC"],["004346","NFXKETFLJC","南方小康ETF联接C","联接基金","NANFANGXIAOKANGETFLIANJIEC"],["004347","NFZZ500XXJSLJC","南方中证500信息技术联接C","联接基金","NANFANGZHONGZHENG500XINXIJISHULIANJIEC"],["004348","NFZZ500ETFLJC","南方中证500ETF联接C","联接基金","NANFANGZHONGZHENG500ETFLIANJIEC"],["004353","JSXTHDQHH","嘉实新添华定期混合","混合型","JIASHIXINTIANHUADINGQIHUNHE"],["004355","JSFHLHPZHH","嘉实丰和灵活配置混合","混合型","JIASHIFENGHELINGHUOPEIZHIHUNHE"],["004357","NFZHHH","南方智慧混合","混合型","NANFANGZHIHUIHUNHE"],["004358","HTBRGQGGHH","华泰柏瑞国企改革混合","混合型","HUATAIBAIRUIGUOQIGAIGEHUNHE"],["004359","CJHXLHHXHHA","创金合信量化核心混合A","混合型","CHUANGJINHEXINLIANGHUAHEXINHUNHEA"],["004360","CJHXLHHXHHC","创金合信量化核心混合C","混合型","CHUANGJINHEXINLIANGHUAHEXINHUNHEC"],["004361","STATHBA","上投安通回报A","混合型","SHANGTOUANTONGHUIBAOA"],["004362","STATHBC","上投安通回报C","混合型","SHANGTOUANTONGHUIBAOC"],["004363","DFZYCZZQA","东方臻悦纯债债券A","债券型","DONGFANGZHENYUECHUNZHAIZHAIQUANA"],["004364","DFZYCZZQC","东方臻悦纯债债券C","债券型","DONGFANGZHENYUECHUNZHAIZHAIQUANC"],["004366","BSHXCZZQA","博时汇享纯债债券A","债券型","BOSHIHUIXIANGCHUNZHAIZHAIQUANA"],["004367","BSHXCZZQC","博时汇享纯债债券C","债券型","BOSHIHUIXIANGCHUNZHAIZHAIQUANC"],["004368","QHKYJCBA","前海开源聚财宝A","货币型","QIANHAIKAIYUANJUCAIBAOA"],["004369","QHKYJCBB","前海开源聚财宝B","货币型","QIANHAIKAIYUANJUCAIBAOB"],["004372","JYZYHBA","金鹰增益货币A","货币型","JINYINGZENGYIHUOBIA"],["004373","JYZYHBB","金鹰增益货币B","货币型","JINYINGZENGYIHUOBIB"],["004374","HTBXJNFHHFQA","华泰保兴吉年丰混合发起A","混合型","HUATAIBAOXINGJINIANFENGHUNHEFAQIA"],["004375","HTBXJNFHHFQC","华泰保兴吉年丰混合发起C","混合型","HUATAIBAOXINGJINIANFENGHUNHEFAQIC"],["004378","XCYFDKHHA","信诚永丰定开混合A","混合型","XINCHENGYONGFENGDINGKAIHUNHEA"],["004379","XCYFDKHHC","信诚永丰定开混合C","混合型","XINCHENGYONGFENGDINGKAIHUNHEC"],["004380","XCYLYNDKHHA","信诚永利一年定开混合A","混合型","XINCHENGYONGLIYINIANDINGKAIHUNHEA"],["004381","XCYLYNDKHHC","信诚永利一年定开混合C","混合型","XINCHENGYONGLIYINIANDINGKAIHUNHEC"],["004383","PADHTYZQA","平安大华添益债券A","债券型","PINGANDAHUATIANYIZHAIQUANA"],["004384","PADHTYZQC","平安大华添益债券C","债券型","PINGANDAHUATIANYIZHAIQUANC"],["004385","ZJXALHPZHH","中金新安灵活配置混合","混合型","ZHONGJINXINANLINGHUOPEIZHIHUNHE"],["004386","GFHA18GYDKZA","广发汇安18个月定开债A","定开债券","GUANGFAHUIAN18GEYUEDINGKAIZHAIA"],["004387","GFHA18GYDKZC","广发汇安18个月定开债C","定开债券","GUANGFAHUIAN18GEYUEDINGKAIZHAIC"],["004388","PHFXZQ","鹏华丰享债券","债券型","PENGHUAFENGXIANGZHAIQUAN"],["004389","DCHMDKCZZQ","大成惠明定开纯债债券","定开债券","DACHENGHUIMINGDINGKAICHUNZHAIZHAIQUAN"],["004390","PADHZXCXHHA","平安大华转型创新混合A","混合型","PINGANDAHUAZHUANXINGCHUANGXINHUNHEA"],["004391","PADHZXCXHHC","平安大华转型创新混合C","混合型","PINGANDAHUAZHUANXINGCHUANGXINHUNHEC"],["004392","GYRLLNFBZQ","工银瑞利两年封闭债券","债券型","GONGYINRUILILIANGNIANFENGBIZHAIQUAN"],["004393","AXHZCXLHPZHH","安信合作创新灵活配置混合","混合型","ANXINHEZUOCHUANGXINLINGHUOPEIZHIHUNHE"],["004395","GFHTCZZQ","国富恒通纯债债券","债券型","GUOFUHENGTONGCHUNZHAIZHAIQUAN"],["004396","ZYWTYLHH","中银文体娱乐混合","混合型","ZHONGYINWENTIYULEHUNHE"],["004397","CSXXAQLHCLHH","长盛信息安全量化策略混合","混合型","CHANGSHENGXINXIANQUANLIANGHUACELUEHUNHE"],["004398","RTXJBHBB","融通现金宝货币B","货币型","RONGTONGXIANJINBAOHUOBIB"],["004399","RTHCBHBE","融通汇财宝货币E","货币型","RONGTONGHUICAIBAOHUOBIE"],["004400","JXMXZQA","金信民兴债券A","债券型","JINXINMINXINGZHAIQUANA"],["004401","JXMXZQC","金信民兴债券C","债券型","JINXINMINXINGZHAIQUANC"],["004403","PADHGXJXHGSA","平安大华股息精选沪港深A","股票型","PINGANDAHUAGUXIJINGXUANHUGANGSHENA"],["004404","PADHGXJXHGSC","平安大华股息精选沪港深C","股票型","PINGANDAHUAGUXIJINGXUANHUGANGSHENC"],["004407","ZSSZXF80ETFLJC","招商上证消费80ETF联接C","联接基金","ZHAOSHANGSHANGZHENGXIAOFEI80ETFLIANJIEC"],["004408","ZSSZ100ZSC","招商深证100指数C","股票指数","ZHAOSHANGSHENZHENG100ZHISHUC"],["004409","ZSSZTMT50ETFLJC","招商深证TMT50ETF联接C","联接基金","ZHAOSHANGSHENZHENGTMT50ETFLIANJIEC"],["004410","ZSYSCJ50ZSC","招商央视财经50指数C","股票指数","ZHAOSHANGYANGSHICAIJING50ZHISHUC"],["004411","SWLXZX6GYDQKFHH","申万菱信臻选6个月定期开放混合","混合型","SHENWANLINGXINZHENXUAN6GEYUEDINGQIKAIFANGHUNHE"],["004412","SWLXZXYNDK","申万菱信智选一年定开","混合型","SHENWANLINGXINZHIXUANYINIANDINGKAI"],["004413","JXMFHBHH","建信民丰回报混合","混合型","JIANXINMINFENGHUIBAOHUNHE"],["004414","TDHLJTBHBA","泰达宏利京天宝货币A","货币型","TAIDAHONGLIJINGTIANBAOHUOBIA"],["004415","TDHLJTBHBB","泰达宏利京天宝货币B","货币型","TAIDAHONGLIJINGTIANBAOHUOBIB"],["004419","HTFMYZZQRMBA","汇添富美元债债券人民币A","QDII","HUITIANFUMEIYUANZHAIZHAIQUANRENMINBIA"],["004420","HTFMYZZQRMBC","汇添富美元债债券人民币C","QDII","HUITIANFUMEIYUANZHAIZHAIQUANRENMINBIC"],["004421","HTFMYZZQMYXHA","汇添富美元债债券美元现汇A","QDII","HUITIANFUMEIYUANZHAIZHAIQUANMEIYUANXIANHUIA"],["004422","HTFMYZZQMYXHC","汇添富美元债债券美元现汇C","QDII","HUITIANFUMEIYUANZHAIZHAIQUANMEIYUANXIANHUIC"],["004425","DBRQZQA","德邦锐祺债券A","债券型","DEBANGRUIQIZHAIQUANA"],["004426","DBRQZQC","德邦锐祺债券C","债券型","DEBANGRUIQIZHAIQUANC"],["004434","BSNXTZHHA","博时逆向投资混合A","混合型","BOSHINIXIANGTOUZIHUNHEA"],["004435","BSNXTZHHC","博时逆向投资混合C","混合型","BOSHINIXIANGTOUZIHUNHEC"],["004436","TFNNTDKHHA","添富年年泰定开混合A","混合型","TIANFUNIANNIANTAIDINGKAIHUNHEA"],["004437","TFNNTDKHHC","添富年年泰定开混合C","混合型","TIANFUNIANNIANTAIDINGKAIHUNHEC"],["004438","PHYADQKFZQ","鹏华永安定期开放债券","定开债券","PENGHUAYONGANDINGQIKAIFANGZHAIQUAN"],["004441","FRFXCZ","富荣富兴纯债","债券型","FURONGFUXINGCHUNZHAI"],["004442","ZOKYHHA","中欧康裕混合A","混合型","ZHONGOUKANGYUHUNHEA"],["004445","PHFJZQ","鹏华丰嘉债券","债券型","PENGHUAFENGJIAZHAIQUAN"],["004448","BSHZHBLHPZHH","博时汇智回报灵活配置混合","混合型","BOSHIHUIZHIHUIBAOLINGHUOPEIZHIHUNHE"],["004449","SYHZLHB","上银慧增利货币","货币型","SHANGYINHUIZENGLIHUOBI"],["004451","HTFNNFDKHHA","汇添富年年丰定开混合A","混合型","HUITIANFUNIANNIANFENGDINGKAIHUNHEA"],["004452","HTFNNFDKHHC","汇添富年年丰定开混合C","混合型","HUITIANFUNIANNIANFENGDINGKAIHUNHEC"],["004453","QHKYYXA","前海开源盈鑫A","混合型","QIANHAIKAIYUANYINGXINA"],["004454","QHKYYXC","前海开源盈鑫C","混合型","QIANHAIKAIYUANYINGXINC"],["004455","ZOKYHHC","中欧康裕混合C","混合型","ZHONGOUKANGYUHUNHEC"],["004456","HFXFXQSLHPZ","华福消费新趋势灵活配置","混合型","HUAFUXIAOFEIXINQUSHILINGHUOPEIZHI"],["004458","BSHYCZZQ","博时华盈纯债债券","债券型","BOSHIHUAYINGCHUNZHAIZHAIQUAN"],["004459","XYRLZQ","鑫元瑞利债券","债券型","XINYUANRUILIZHAIQUAN"],["004463","PHFYZQ","鹏华丰玉债券","债券型","PENGHUAFENGYUZHAIQUAN"],["004464","WJJS9GYDKZA","万家玖盛9个月定开债A","定开债券","WANJIAJIUSHENG9GEYUEDINGKAIZHAIA"],["004465","WJJS9GYDKZC","万家玖盛9个月定开债C","定开债券","WANJIAJIUSHENG9GEYUEDINGKAIZHAIC"],["004466","CSSJYNQDKHH","长盛盛杰一年期定开混合","混合型","CHANGSHENGSHENGJIEYINIANQIDINGKAIHUNHE"],["004469","HTFXYDKZA","汇添富鑫益定开债A","定开债券","HUITIANFUXINYIDINGKAIZHAIA"],["004470","HTFXYDKZC","汇添富鑫益定开债C","定开债券","HUITIANFUXINYIDINGKAIZHAIC"],["004473","QHKYZXHBA","前海开源尊享货币A","货币型","QIANHAIKAIYUANZUNXIANGHUOBIA"],["004474","QHKYZXHBB","前海开源尊享货币B","货币型","QIANHAIKAIYUANZUNXIANGHUOBIB"],["004477","JSHGSHBHH","嘉实沪港深回报混合","混合型","JIASHIHUGANGSHENHUIBAOHUNHE"],["004480","HBZHCYHH","华宝智慧产业混合","混合型","HUABAOZHIHUICHANYEHUNHE"],["004486","JSWYZQ","嘉实稳怡债券","债券型","JIASHIWENYIZHAIQUAN"],["004488","JSFSZGA50ETFLJ","嘉实富时中国A50ETF联接","联接基金","JIASHIFUSHIZHONGGUOA50ETFLIANJIE"],["004492","XCZX","信诚至信","混合型","XINCHENGZHIXIN"],["004495","BSLHPHHH","博时量化平衡混合","混合型","BOSHILIANGHUAPINGHENGHUNHE"],["004496","QHKYDYCLHHA","前海开源多元策略混合A","混合型","QIANHAIKAIYUANDUOYUANCELUEHUNHEA"],["004497","QHKYDYCLHHC","前海开源多元策略混合C","混合型","QIANHAIKAIYUANDUOYUANCELUEHUNHEC"],["004498","PHFYZQ","鹏华丰源债券","债券型","PENGHUAFENGYUANZHAIQUAN"],["004499","PHFRZQ","鹏华丰瑞债券","债券型","PENGHUAFENGRUIZHAIQUAN"],["004501","JSXJTLHB","嘉实现金添利货币","货币型","JIASHIXIANJINTIANLIHUOBI"],["004503","PHYTDQKFZQ","鹏华永泰定期开放债券","定开债券","PENGHUAYONGTAIDINGQIKAIFANGZHAIQUAN"],["004505","BSXXXFZTHH","博时新兴消费主题混合","混合型","BOSHIXINXINGXIAOFEIZHUTIHUNHE"],["004514","PHXKJCMHH","鹏华新科技传媒混合","混合型","PENGHUAXINKEJICHUANMEIHUNHE"],["020001","GTJYZZLHPZ","国泰金鹰增长灵活配置","混合型","GUOTAIJINYINGZENGZHANGLINGHUOPEIZHI"],["020002","GTJLZQA","国泰金龙债券A","债券型","GUOTAIJINLONGZHAIQUANA"],["020003","GTJLHYJX","国泰金龙行业精选","混合型","GUOTAIJINLONGHANGYEJINGXUAN"],["020005","GTJMWJ","国泰金马稳健","混合型","GUOTAIJINMAWENJIAN"],["020007","GTHB","国泰货币","货币型","GUOTAIHUOBI"],["020009","GTJPLC","国泰金鹏蓝筹","混合型","GUOTAIJINPENGLANCHOU"],["020010","GTJNCXCZHH","国泰金牛创新成长混合","混合型","GUOTAIJINNIUCHUANGXINCHENGZHANGHUNHE"],["020011","GTHS300","国泰沪深300","股票指数","GUOTAIHUSHEN300"],["020012","GTJLZQC","国泰金龙债券C","债券型","GUOTAIJINLONGZHAIQUANC"],["020015","GTQWYSGP","国泰区位优势混合","混合型","GUOTAIQUWEIYOUSHIHUNHE"],["020018","GTJLBBHH","国泰金鹿保本混合","保本型","GUOTAIJINLUBAOBENHUNHE"],["020019","GTSLZQA","国泰双利债券A","债券型","GUOTAISHUANGLIZHAIQUANA"],["020020","GTSLZQC","国泰双利债券C","债券型","GUOTAISHUANGLIZHAIQUANC"],["020021","GTSZ180JRLJ","国泰上证180金融联接","联接基金","GUOTAISHANGZHENG180JINRONGLIANJIE"],["020022","GTBB","国泰保本","保本型","GUOTAIBAOBEN"],["020023","GTSJQDCLHH","国泰事件驱动策略混合","混合型","GUOTAISHIJIANQUDONGCELUEHUNHE"],["020026","GTCZYXHH","国泰成长优选混合","混合型","GUOTAICHENGZHANGYOUXUANHUNHE"],["020027","GTXYZQA","国泰信用债券A","债券型","GUOTAIXINYONGZHAIQUANA"],["020028","GTXYZQC","国泰信用债券C","债券型","GUOTAIXINYONGZHAIQUANC"],["020029","GTCLZQ","国泰创利债券","债券型","GUOTAICHUANGLIZHAIQUAN"],["020031","GTXJGLHBA","国泰现金管理货币A","货币型","GUOTAIXIANJINGUANLIHUOBIA"],["020032","GTXJGLHBB","国泰现金管理货币B","货币型","GUOTAIXIANJINGUANLIHUOBIB"],["020033","GTMAZLZQA","国泰民安增利债券A","债券型","GUOTAIMINANZENGLIZHAIQUANA"],["020034","GTMAZLZQC","国泰民安增利债券C","债券型","GUOTAIMINANZENGLIZHAIQUANC"],["020035","GTSZ5NQGZLJA","国泰上证5年期国债联接A","联接基金","GUOTAISHANGZHENG5NIANQIGUOZHAILIANJIEA"],["020036","GTSZ5NQGZLJC","国泰上证5年期国债联接C","联接基金","GUOTAISHANGZHENG5NIANQIGUOZHAILIANJIEC"],["020037","GTXJGLHBR","国泰现金管理货币R","货币型","GUOTAIXIANJINGUANLIHUOBIR"],["040001","HACX","华安创新","混合型","HUAANCHUANGXIN"],["040002","HAZGAGZQZS","华安中国A股增强指数","股票指数","HUAANZHONGGUOAGUZENGQIANGZHISHU"],["040003","HAXJFLHBA","华安现金富利货币A","货币型","HUAANXIANJINFULIHUOBIA"],["040004","HABLPZ","华安宝利配置","混合型","HUAANBAOLIPEIZHI"],["040005","HAHLHH","华安宏利混合","混合型","HUAANHONGLIHUNHE"],["040007","HAZXPCZHH","华安中小盘成长混合","混合型","HUAANZHONGXIAOPANCHENGZHANGHUNHE"],["040008","HACLYXHH","华安策略优选混合","混合型","HUAANCELUEYOUXUANHUNHE"],["040009","HAWDZQA","华安稳定债券A","债券型","HUAANWENDINGZHAIQUANA"],["040010","HAWDZQB","华安稳定债券B","债券型","HUAANWENDINGZHAIQUANB"],["040011","HAHXYXHH","华安核心优选混合","混合型","HUAANHEXINYOUXUANHUNHE"],["040012","HAQHZQA","华安强化债券A","债券型","HUAANQIANGHUAZHAIQUANA"],["040013","HAQHZQB","华安强化债券B","债券型","HUAANQIANGHUAZHAIQUANB"],["040015","HADTLHPZ","华安动态灵活配置","混合型","HUAANDONGTAILINGHUOPEIZHI"],["040016","HAHYLDHH","华安行业轮动混合","混合型","HUAANHANGYELUNDONGHUNHE"],["040018","HAXGJX","华安香港精选","QDII","HUAANXIANGGANGJINGXUAN"],["040019","HAWGSYZQC","华安稳固收益债券C","债券型","HUAANWENGUSHOUYIZHAIQUANC"],["040020","HASJZTHH","华安升级主题混合","混合型","HUAANSHENGJIZHUTIHUNHE"],["040021","HADZHSJ","华安大中华升级","QDII","HUAANDAZHONGHUASHENGJI"],["040022","HAKZZZQA","华安可转债债券A","债券型","HUAANKEZHUANZHAIZHAIQUANA"],["040023","HAKZZZQB","华安可转债债券B","债券型","HUAANKEZHUANZHAIZHAIQUANB"],["040025","HAKJDLHH","华安科技动力混合","混合型","HUAANKEJIDONGLIHUNHE"],["040026","HAXYSJHZQ","华安信用四季红债券","债券型","HUAANXINYONGSIJIHONGZHAIQUAN"],["040027","HAYYXDQLCZQA","华安月月鑫短期理财债券A","理财型","HUAANYUEYUEXINDUANQILICAIZHAIQUANA"],["040028","HAYYXDQLCZQA","华安月月鑫短期理财债券A","理财型","HUAANYUEYUEXINDUANQILICAIZHAIQUANA"],["040029","HAYYXDQLCZQB","华安月月鑫短期理财债券B","理财型","HUAANYUEYUEXINDUANQILICAIZHAIQUANB"],["040030","HAJJXDQLCZQA","华安季季鑫短期理财债券A","理财型","HUAANJIJIXINDUANQILICAIZHAIQUANA"],["040031","HAJJXDQLCZQB","华安季季鑫短期理财债券B","理财型","HUAANJIJIXINDUANQILICAIZHAIQUANB"],["040032","HAYAXDQLCZQA","华安月安鑫短期理财债券A","理财型","HUAANYUEANXINDUANQILICAIZHAIQUANA"],["040033","HAYAXDQLCZQA","华安月安鑫短期理财债券A","理财型","HUAANYUEANXINDUANQILICAIZHAIQUANA"],["040034","HAYAXDQLCZQB","华安月安鑫短期理财债券B","理财型","HUAANYUEANXINDUANQILICAIZHAIQUANB"],["040035","HANXCLHH","华安逆向策略混合","混合型","HUAANNIXIANGCELUEHUNHE"],["040036","HAAXSYZQA","华安安心收益债券A","债券型","HUAANANXINSHOUYIZHAIQUANA"],["040037","HAAXSYZQB","华安安心收益债券B","债券型","HUAANANXINSHOUYIZHAIQUANB"],["040038","HARRXHBA","华安日日鑫货币A","货币型","HUAANRIRIXINHUOBIA"],["040039","HARRXHBB","华安日日鑫货币B","货币型","HUAANRIRIXINHUOBIB"],["040040","HACZZQA","华安纯债债券A","债券型","HUAANCHUNZHAIZHAIQUANA"],["040041","HACZZQC","华安纯债债券C","债券型","HUAANCHUNZHAIZHAIQUANC"],["040045","HAXYZQZQ","华安信用增强债券","债券型","HUAANXINYONGZENGQIANGZHAIQUAN"],["040046","HANSDK100ZS","华安纳斯达克100指数","QDII-指数","HUAANNASIDAKE100ZHISHU"],["040047","HANSDK100ZSXC","华安纳斯达克100指数现钞","QDII-指数","HUAANNASIDAKE100ZHISHUXIANCHAO"],["040048","HANSDK100ZSXH","华安纳斯达克100指数现汇","QDII-指数","HUAANNASIDAKE100ZHISHUXIANHUI"],["040180","HASZ180LJ","华安上证180联接","联接基金","HUAANSHANGZHENG180LIANJIE"],["040190","HASZLTLJ","华安上证龙头联接","联接基金","HUAANSHANGZHENGLONGTOULIANJIE"],["041001","HACX","华安创新(后端)","混合型","HUAANCHUANGXIN"],["041002","HAZGAGZQZS","华安中国A股增强指数(后端)","股票指数","HUAANZHONGGUOAGUZENGQIANGZHISHU"],["041003","HAXJFLHBB","华安现金富利货币B","货币型","HUAANXIANJINFULIHUOBIB"],["041004","HABLPZ","华安宝利配置(后端)","混合型","HUAANBAOLIPEIZHI"],["041005","HAHLHH","华安宏利混合(后端)","混合型","HUAANHONGLIHUNHE"],["041007","HAZXPCZHH","华安中小盘成长混合(后端)","混合型","HUAANZHONGXIAOPANCHENGZHANGHUNHE"],["041008","HACLYXHH","华安策略优选混合(后端)","混合型","HUAANCELUEYOUXUANHUNHE"],["041009","HAWDZQA","华安稳定债券A(后端)","债券型","HUAANWENDINGZHAIQUANA"],["041011","HAHXYXHH","华安核心优选混合(后端)","混合型","HUAANHEXINYOUXUANHUNHE"],["050001","BSJZZZ","博时价值增长","混合型","BOSHIJIAZHIZENGZHANG"],["050002","BSHS300ZSA","博时沪深300指数A","股票指数","BOSHIHUSHEN300ZHISHUA"],["050003","BSXJSYHBA","博时现金收益货币A","货币型","BOSHIXIANJINSHOUYIHUOBIA"],["050004","BSJXHHA","博时精选混合A","混合型","BOSHIJINGXUANHUNHEA"],["050006","BSWDJZZQB","博时稳定价值债券B","债券型","BOSHIWENDINGJIAZHIZHAIQUANB"],["050007","BSPHPZ","博时平衡配置","混合型","BOSHIPINGHENGPEIZHI"],["050008","BSDSCYHH","博时第三产业混合","混合型","BOSHIDISANCHANYEHUNHE"],["050009","BSXXCZHH","博时新兴成长混合","混合型","BOSHIXINXINGCHENGZHANGHUNHE"],["050010","BSTXJZHHA","博时特许价值混合A","混合型","BOSHITEXUJIAZHIHUNHEA"],["050011","BSXYZQA/B","博时信用债券A/B","债券型","BOSHIXINYONGZHAIQUANAB"],["050012","BSCLPZ","博时策略配置","混合型","BOSHICELUEPEIZHI"],["050013","BSSZCDPLJ","博时上证超大盘联接","联接基金","BOSHISHANGZHENGCHAODAPANLIANJIE"],["050014","BSCYCZHHA","博时创业成长混合A","混合型","BOSHICHUANGYECHENGZHANGHUNHEA"],["050015","BSDZHYTJXGP","博时大中华亚太精选股票","QDII","BOSHIDAZHONGHUAYATAIJINGXUANGUPIAO"],["050016","BSHGZQA/B","博时宏观债券A/B","债券型","BOSHIHONGGUANZHAIQUANA/B"],["050018","BSHYLDHH","博时行业轮动混合","混合型","BOSHIHANGYELUNDONGHUNHE"],["050019","BSZZZQZQA","博时转债增强债券A","债券型","BOSHIZHUANZHAIZENGQIANGZHAIQUANA"],["050020","BSKTZZQ","博时抗通胀增强","QDII","BOSHIKANGTONGZHANGZENGQIANG"],["050021","BSSZ200LJ","博时深证200联接","联接基金","BOSHISHENZHENG200LIANJIE"],["050022","BSHBLHPZ","博时回报灵活配置","混合型","BOSHIHUIBAOLINGHUOPEIZHI"],["050023","BSTYZQA","博时天颐债券A","债券型","BOSHITIANYIZHAIQUANA"],["050024","BSSZZRZYLJ","博时上证自然资源联接","联接基金","BOSHISHANGZHENGZIRANZIYUANLIANJIE"],["050025","BSBP500ETFLJ","博时标普500ETF联接","QDII-指数","BOSHIBIAOPU500ETFLIANJIE"],["050026","BSYLBJHYHHA","博时医疗保健行业混合A","混合型","BOSHIYILIAOBAOJIANHANGYEHUNHEA"],["050027","BSXYZCZZQA","博时信用债纯债债券A","债券型","BOSHIXINYONGZHAICHUNZHAIZHAIQUANA"],["050028","BSAXSYDQZQA","博时安心收益定期债券A","定开债券","BOSHIANXINSHOUYIDINGQIZHAIQUANA"],["050029","BSXJYHHA","博时新机遇混合A","混合型","BOSHIXINJIYUHUNHEA"],["050030","BSYZPXSYZQ","博时亚洲票息收益债券","QDII","BOSHIYAZHOUPIAOXISHOUYIZHAIQUAN"],["050106","BSWDJZZQA","博时稳定价值债券A","债券型","BOSHIWENDINGJIAZHIZHAIQUANA"],["050111","BSXYZQC","博时信用债券C","债券型","BOSHIXINYONGZHAIQUANC"],["050116","BSHGZQC","博时宏观债券C","债券型","BOSHIHONGGUANZHAIQUANC"],["050119","BSZZZQZQC","博时转债增强债券C","债券型","BOSHIZHUANZHAIZENGQIANGZHAIQUANC"],["050123","BSTYZQC","博时天颐债券C","债券型","BOSHITIANYIZHAIQUANC"],["050128","BSAXSYDQZQC","博时安心收益定期债券C","定开债券","BOSHIANXINSHOUYIDINGQIZHAIQUANC"],["050201","BSJZZZEH","博时价值增长二号","混合型","BOSHIJIAZHIZENGZHANGERHAO"],["050202","BSYZPXSYZQXH","博时亚洲票息收益债券现汇","QDII","BOSHIYAZHOUPIAOXISHOUYIZHAIQUANXIANHUI"],["050203","BSYZPXSYZQXC","博时亚洲票息收益债券现钞","QDII","BOSHIYAZHOUPIAOXISHOUYIZHAIQUANXIANCHAO"],["051001","BSJZZZ","博时价值增长(后端)","混合型","BOSHIJIAZHIZENGZHANG"],["051010","BSTXJZHHA","博时特许价值混合A(后端)","混合型","BOSHITEXUJIAZHIHUNHEA"],["051011","BSXYZQA/B","博时信用债券A/B(后端)","债券型","BOSHIXINYONGZHAIQUANAB"],["051014","BSCYCZHHA","博时创业成长混合A(后端)","混合型","BOSHICHUANGYECHENGZHANGHUNHEA"],["051016","BSHGZQA/B","博时宏观债券A/B(后端)","债券型","BOSHIHONGGUANZHAIQUANA/B"],["051106","BSWDJZZQA","博时稳定价值债券A(后端)","债券型","BOSHIWENDINGJIAZHIZHAIQUANA"],["051201","BSJZZZEH","博时价值增长二号(后端)","混合型","BOSHIJIAZHIZENGZHANGERHAO"],["070001","JSCZSYHHA","嘉实成长收益混合A","混合型","JIASHICHENGZHANGSHOUYIHUNHEA"],["070002","JSZZ","嘉实增长","混合型","JIASHIZENGZHANG"],["070003","JSWJ","嘉实稳健","混合型","JIASHIWENJIAN"],["070005","JSZQ","嘉实债券","债券型","JIASHIZHAIQUAN"],["070006","JSFWZZHY","嘉实服务增值行业","混合型","JIASHIFUWUZENGZHIHANGYE"],["070008","JSHBA","嘉实货币A","货币型","JIASHIHUOBIA"],["070009","JSCDZZQ","嘉实超短债债券","债券型","JIASHICHAODUANZHAIZHAIQUAN"],["070010","JSZTJX","嘉实主题精选","混合型","JIASHIZHUTIJINGXUAN"],["070011","JSCLZZ","嘉实策略增长","混合型","JIASHICELUEZENGZHANG"],["070012","JSHWZGGPHH","嘉实海外中国股票混合","QDII","JIASHIHAIWAIZHONGGUOGUPIAOHUNHE"],["070013","JSYJJXHHA","嘉实研究精选混合A","混合型","JIASHIYANJIUJINGXUANHUNHEA"],["070015","JSDYZQA","嘉实多元债券A","债券型","JIASHIDUOYUANZHAIQUANA"],["070016","JSDYZQB","嘉实多元债券B","债券型","JIASHIDUOYUANZHAIQUANB"],["070017","JSLHAEFHH","嘉实量化阿尔法混合","混合型","JIASHILIANGHUAAERFAHUNHE"],["070018","JSHB","嘉实回报","混合型","JIASHIHUIBAO"],["070019","JSJZYSHH","嘉实价值优势混合","混合型","JIASHIJIAZHIYOUSHIHUNHE"],["070020","JSWGZQ","嘉实稳固债券","债券型","JIASHIWENGUZHAIQUAN"],["070021","JSZTXDLHH","嘉实主题新动力混合","混合型","JIASHIZHUTIXINDONGLIHUNHE"],["070022","JSLXCZHH","嘉实领先成长混合","混合型","JIASHILINGXIANCHENGZHANGHUNHE"],["070023","JSSZ120LJ","嘉实深证120联接","联接基金","JIASHISHENZHENG120LIANJIE"],["070025","JSXYZQA","嘉实信用债券A","债券型","JIASHIXINYONGZHAIQUANA"],["070026","JSXYZQC","嘉实信用债券C","债券型","JIASHIXINYONGZHAIQUANC"],["070027","JSZQYXHH","嘉实周期优选混合","混合型","JIASHIZHOUQIYOUXUANHUNHE"],["070028","JSAXHBSCA","嘉实安心货币市场A","货币型","JIASHIANXINHUOBISHICHANGA"],["070029","JSAXHBSCB","嘉实安心货币市场B","货币型","JIASHIANXINHUOBISHICHANGB"],["070030","JSZC400LJ","嘉实中创400联接","联接基金","JIASHIZHONGCHUANG400LIANJIE"],["070031","JSQQFDC","嘉实全球房地产","QDII","JIASHIQUANQIUFANGDECHAN"],["070032","JSYHHLHH","嘉实优化红利混合","混合型","JIASHIYOUHUAHONGLIHUNHE"],["070033","JSZQSYDQZQA","嘉实增强收益定期债券A","定开债券","JIASHIZENGQIANGSHOUYIDINGQIZHAIQUANA"],["070035","JSLCB7TZQA","嘉实理财宝7天债券A","理财型","JIASHILICAIBAO7TIANZHAIQUANA"],["070036","JSLCB7TZQB","嘉实理财宝7天债券B","理财型","JIASHILICAIBAO7TIANZHAIQUANB"],["070037","JSCZZQA","嘉实纯债债券A","债券型","JIASHICHUNZHAIZHAIQUANA"],["070038","JSCZZQC","嘉实纯债债券C","债券型","JIASHICHUNZHAIZHAIQUANC"],["070088","JSHBB","嘉实货币B","货币型","JIASHIHUOBIB"],["070099","JSYZQYHH","嘉实优质企业混合","混合型","JIASHIYOUZHIQIYEHUNHE"],["080001","CSCZJZ","长盛成长价值","混合型","CHANGSHENGCHENGZHANGJIAZHI"],["080002","CSCXXF","长盛创新先锋","混合型","CHANGSHENGCHUANGXINXIANFENG"],["080003","CSJJPZZQ","长盛积极配置债券","债券型","CHANGSHENGJIJIPEIZHIZHAIQUAN"],["080005","CSLHHLHH","长盛量化红利混合","混合型","CHANGSHENGLIANGHUAHONGLIHUNHE"],["080006","CSHQHYHHQDII","长盛环球行业混合(QDII)","QDII","CHANGSHENGHUANQIUHANGYEHUNHEQDII"],["080007","CSTXHYPZHH","长盛同鑫行业配置混合","混合型","CHANGSHENGTONGXINHANGYEPEIZHIHUNHE"],["080008","CSZLXXCYHHA","长盛战略新兴产业混合A","混合型","CHANGSHENGZHANLUEXINXINGCHANYEHUNHEA"],["080009","CSTXZQA","长盛同禧债券A","债券型","CHANGSHENGTONGXIZHAIQUANA"],["080010","CSTXZQC","长盛同禧债券C","债券型","CHANGSHENGTONGXIZHAIQUANC"],["080011","CSHB","长盛货币","货币型","CHANGSHENGHUOBI"],["080012","CSDZXXCYHH","长盛电子信息产业混合","混合型","CHANGSHENGDIANZIXINXICHANYEHUNHE"],["080015","CSZXPJXHH","长盛中小盘精选混合","混合型","CHANGSHENGZHONGXIAOPANJINGXUANHUNHE"],["090001","DCJZZZ","大成价值增长","混合型","DACHENGJIAZHIZENGZHANG"],["090002","DCZQA/B","大成债券A/B","债券型","DACHENGZHAIQUANAB"],["090003","DCLCWJ","大成蓝筹稳健","混合型","DACHENGLANCHOUWENJIAN"],["090004","DCJXZZ","大成精选增值","混合型","DACHENGJINGXUANZENGZHI"],["090005","DCHBA","大成货币A","货币型","DACHENGHUOBIA"],["090006","DC2020SMZQ","大成2020生命周期","混合型","DACHENG2020SHENGMINGZHOUQI"],["090007","DCCLHBHH","大成策略回报混合","混合型","DACHENGCELUEHUIBAOHUNHE"],["090008","DCQHSYDQKFZQ","大成强化收益定期开放债券","定开债券","DACHENGQIANGHUASHOUYIDINGKAIZHAI"],["090009","DCHYLDHH","大成行业轮动混合","混合型","DACHENGHANGYELUNDONGHUNHE"],["090010","DCZZHLZS","大成中证红利指数","股票指数","DACHENGZHONGZHENGHONGLIZHISHU"],["090011","DCHXSDLHH","大成核心双动力混合","混合型","DACHENGHEXINSHUANGDONGLIHUNHE"],["090012","DCSZCZ40LJ","大成深证成长40联接","联接基金","DACHENGSHENZHENGCHENGZHANG40LIANJIE"],["090013","DCJZYSHH","大成竞争优势混合","混合型","DACHENGJINGZHENGYOUSHIHUNHE"],["090015","DCNXZZHH","大成内需增长混合","混合型","DACHENGNEIXUZENGZHANGHUNHE"],["090016","DCXFZTHH","大成消费主题混合","混合型","DACHENGXIAOFEIZHUTIHUNHE"],["090017","DCKZZZQZQ","大成可转债增强债券","债券型","DACHENGKEZHUANZHAIZENGQIANGZHAIQUAN"],["090018","DCXRCYHH","大成新锐产业混合","混合型","DACHENGXINRUICHANYEHUNHE"],["090019","DCJHBBHH","大成景恒保本混合","保本型","DACHENGJINGHENGBAOBENHUNHE"],["090020","DCJKCYHH","大成健康产业混合","混合型","DACHENGJIANKANGCHANYEHUNHE"],["090021","DCYTLZQA","大成月添利债券A","理财型","DACHENGYUETIANLIZHAIQUANA"],["090022","DCXJZLHBA","大成现金增利货币A","货币型","DACHENGXIANJINZENGLIHUOBIA"],["090023","DCYYYDQLCZQA","大成月月盈短期理财债券A","理财型","DACHENGYUEYUEYINGDUANQILICAIZHAIQUANA"],["091001","DCJZZZ","大成价值增长(后端)","混合型","DACHENGJIAZHIZENGZHANG"],["091002","DCZQA/B","大成债券A/B(后端)","债券型","DACHENGZHAIQUANAB"],["091003","DCLCWJ","大成蓝筹稳健(后端)","混合型","DACHENGLANCHOUWENJIAN"],["091005","DCHBB","大成货币B","货币型","DACHENGHUOBIB"],["091006","DC2020SMZQ","大成2020生命周期(后端)","混合型","DACHENG2020SHENGMINGZHOUQI"],["091008","DCQHSYDQKFZQ","大成强化收益定期开放债券(后端)","定开债券","DACHENGQIANGHUASHOUYIDINGKAIZHAI"],["091021","DCYTLZQB","大成月添利债券B","理财型","DACHENGYUETIANLIZHAIQUANB"],["091022","DCXJZLHBB","大成现金增利货币B","货币型","DACHENGXIANJINZENGLIHUOBIB"],["091023","DCYYYDQLCZQB","大成月月盈短期理财债券B","理财型","DACHENGYUEYUEYINGDUANQILICAIZHAIQUANB"],["092002","DCZQC","大成债券C","债券型","DACHENGZHAIQUANC"],["096001","DCBP500","大成标普500","QDII-指数","DACHENGBIAOPU500"],["100016","FGTYHGSPHHH","富国天源沪港深平衡混合","混合型","FUGUOTIANYUANHUGANGSHENPINGHENGHUNHE"],["100017","FGTYHGSPHHH","富国天源沪港深平衡混合(后端)","混合型","FUGUOTIANYUANHUGANGSHENPINGHENGHUNHE"],["100018","FGTLZZZQ","富国天利增长债券","债券型","FUGUOTIANLIZENGZHANGZHAIQUAN"],["100019","FGTLZZZQ","富国天利增长债券(后端)","债券型","FUGUOTIANLIZENGZHANGZHAIQUAN"],["100020","FGTYJZHH","富国天益价值混合","混合型","FUGUOTIANYIJIAZHIHUNHE"],["100021","FGTYJZHH","富国天益价值混合(后端)","混合型","FUGUOTIANYIJIAZHIHUNHE"],["100022","FGTRQS","富国天瑞强势","混合型","FUGUOTIANRUIQIANGSHI"],["100023","FGTRQS","富国天瑞强势(后端)","混合型","FUGUOTIANRUIQIANGSHI"],["100025","FGTSHBA","富国天时货币A","货币型","FUGUOTIANSHIHUOBIA"],["100026","FGTHWJYXHH","富国天合稳健优选混合","混合型","FUGUOTIANHEWENJIANYOUXUANHUNHE"],["100027","FGTHWJYXHH","富国天合稳健优选混合(后端)","混合型","FUGUOTIANHEWENJIANYOUXUANHUNHE"],["100028","FGTSHBB","富国天时货币B","货币型","FUGUOTIANSHIHUOBIB"],["100029","FGTCHL","富国天成红利","混合型","FUGUOTIANCHENGHONGLI"],["100030","FGTCHL","富国天成红利(后端)","混合型","FUGUOTIANCHENGHONGLI"],["100032","FGZZHLZSZQ","富国中证红利指数增强","股票指数","FUGUOZHONGZHENGHONGLIZHISHUZENGQIANG"],["100033","FGZZHLZSZQ","富国中证红利指数增强(后端)","股票指数","FUGUOZHONGZHENGHONGLIZHISHUZENGQIANG"],["100035","FGYHQZA/B","富国优化强债A/B","债券型","FUGUOYOUHUAQIANGZHAIA/B"],["100036","FGYHQZA/B","富国优化强债A/B(后端)","债券型","FUGUOYOUHUAQIANGZHAIA/B"],["100037","FGYHZQZQC","富国优化增强债券C","债券型","FUGUOYOUHUAZENGQIANGZHAIQUANC"],["100038","FGLHHS300","富国量化沪深300","股票指数","FUGUOLIANGHUAHUSHEN300"],["100039","FGTZTSZTLDHH","富国通胀通缩主题轮动混合","混合型","FUGUOTONGZHANGTONGSUOZHUTILUNDONGHUNHE"],["100050","FGQQZQ","富国全球债券","QDII","FUGUOQUANQIUZHAIQUAN"],["100051","FGKZHZQ","富国可转换债券","债券型","FUGUOKEZHUANHUANZHAIQUAN"],["100052","FGKZHZQ","富国可转换债券(后端)","债券型","FUGUOKEZHUANHUANZHAIQUAN"],["100053","FGSZZZLJ","富国上证综指联接","联接基金","FUGUOSHANGZHENGZENGZHILIANJIE"],["100055","FGQQDJXFPHH","富国全球顶级消费品混合","QDII","FUGUOQUANQIUDINGJIXIAOFEIPINHUNHE"],["100056","FGDTHBHH","富国低碳环保混合","混合型","FUGUODITANHUANBAOHUNHE"],["100058","FGCYZZQ","富国产业债债券","债券型","FUGUOCHANYEZHAIZHAIQUAN"],["100059","FGCYZZQ","富国产业债债券(后端)","债券型","FUGUOCHANYEZHAIZHAIQUAN"],["100060","FGGXJSCYHH","富国高新技术产业混合","混合型","FUGUOGAOXINJISHUCHANYEHUNHE"],["100061","FGZGZXPHH","富国中国中小盘混合","QDII","FUGUOZHONGGUOZHONGXIAOPANHUNHE"],["100066","FGCZA","富国纯债A","债券型","FUGUOCHUNZHAIA"],["100067","FGCZA","富国纯债A(后端)","债券型","FUGUOCHUNZHAIA"],["100068","FGCZC","富国纯债C","债券型","FUGUOCHUNZHAIC"],["100072","FGQHBABJ","富国强回报A/B级","定开债券","FUGUOQIANGHUIBAOA/BJI"],["100073","FGQHBCJ","富国强回报C级","定开债券","FUGUOQIANGHUIBAOCJI"],["110001","YFDPWZZ","易方达平稳增长","混合型","YIFANGDAPINGWENZENGZHANG"],["110002","YFDCLCZ","易方达策略成长","混合型","YIFANGDACELUECHENGZHANG"],["110003","YFDSZ50","易方达上证50","股票指数","YIFANGDASHANGZHENG50"],["110005","YFDJJCZ","易方达积极成长","混合型","YIFANGDAJIJICHENGZHANG"],["110006","YFDHBA","易方达货币A","货币型","YIFANGDAHUOBIA"],["110007","YFDWJSYZQA","易方达稳健收益债券A","债券型","YIFANGDAWENJIANSHOUYIZHAIQUANA"],["110008","YFDWJSYZQB","易方达稳健收益债券B","债券型","YIFANGDAWENJIANSHOUYIZHAIQUANB"],["110009","YFDJZJXHH","易方达价值精选混合","混合型","YIFANGDAJIAZHIJINGXUANHUNHE"],["110010","YFDJZCZHHA","易方达价值成长混合A","混合型","YIFANGDAJIAZHICHENGZHANGHUNHEA"],["110011","YFDZXPHH","易方达中小盘混合","混合型","YIFANGDAZHONGXIAOPANHUNHE"],["110012","YFDKHLHPZ","易方达科汇灵活配置","混合型","YIFANGDAKEHUILINGHUOPEIZHI"],["110013","YFDKXHH","易方达科翔混合","混合型","YIFANGDAKEXIANGHUNHE"],["110015","YFDHYLXHH","易方达行业领先混合","混合型","YIFANGDAHANGYELINGXIANHUNHE"],["110016","YFDHBB","易方达货币B","货币型","YIFANGDAHUOBIB"],["110017","YFDZQZQA","易方达增强债券A","债券型","YIFANGDAZENGQIANGZHAIQUANA"],["110018","YFDZQZQB","易方达增强债券B","债券型","YIFANGDAZENGQIANGZHAIQUANB"],["110019","YFDSZ100LJ","易方达深证100联接","联接基金","YIFANGDASHENZHENG100LIANJIE"],["110020","YFDHS300ETFLJ","易方达沪深300ETF联接","联接基金","YIFANGDAHUSHEN300ETFLIANJIE"],["110021","YFDSZZPLJ","易方达上证中盘联接","联接基金","YIFANGDASHANGZHENGZHONGPANLIANJIE"],["110022","YFDXFHY","易方达消费行业","股票型","YIFANGDAXIAOFEIHANGYE"],["110023","YFDYLBJHYHH","易方达医疗保健行业混合","混合型","YIFANGDAYILIAOBAOJIANHANGYEHUNHE"],["110025","YFDZYHYHH","易方达资源行业混合","混合型","YIFANGDAZIYUANHANGYEHUNHE"],["110026","YFDCYBLJ","易方达创业板联接","联接基金","YIFANGDACHUANGYEBANLIANJIE"],["110027","YFDAXZQA","易方达安心债券A","债券型","YIFANGDAANXINZHAIQUANA"],["110028","YFDAXZQB","易方达安心债券B","债券型","YIFANGDAANXINZHAIQUANB"],["110029","YFDKXHH","易方达科讯混合","混合型","YIFANGDAKEXUNHUNHE"],["110030","YFDHS300LHZQ","易方达沪深300量化增强","股票指数","YIFANGDAHUSHEN300LIANGHUAZENGQIANG"],["110031","YFDHSETFLJ","易方达恒生ETF联接","QDII-指数","YIFANGDAHENGSHENGETFLIANJIE"],["110032","YFDHSLJXH","易方达恒生联接现汇","QDII-指数","YIFANGDAHENGSHENGLIANJIEXIANHUI"],["110033","YFDHSLJXC","易方达恒生联接现钞","QDII-指数","YIFANGDAHENGSHENGLIANJIEXIANCHAO"],["110035","YFDSZQZA","易方达双债强债A","债券型","YIFANGDASHUANGZHAIQIANGZHAIA"],["110036","YFDSZQZC","易方达双债强债C","债券型","YIFANGDASHUANGZHAIQIANGZHAIC"],["110037","YFDCZZQA","易方达纯债债券A","债券型","YIFANGDACHUNZHAIZHAIQUANA"],["110038","YFDCZZQC","易方达纯债债券C","债券型","YIFANGDACHUNZHAIZHAIQUANC"],["110050","YFDYYLLCZQA","易方达月月利理财债券A","理财型","YIFANGDAYUEYUELILICAIZHAIQUANA"],["110051","YFDYYLLCZQB","易方达月月利理财债券B","理财型","YIFANGDAYUEYUELILICAIZHAIQUANB"],["110052","YFDSYLLCZQA","易方达双月利理财债券A","理财型","YIFANGDASHUANGYUELILICAIZHAIQUANA"],["110053","YFDSYLLCZQB","易方达双月利理财债券B","理财型","YIFANGDASHUANGYUELILICAIZHAIQUANB"],["112002","YFDCLCZEH","易方达策略成长二号","混合型","YIFANGDACELUECHENGZHANGERHAO"],["118001","YFDYZJX","易方达亚洲精选","QDII","YIFANGDAYAZHOUJINGXUAN"],["118002","YFDBPXFPZS","易方达标普消费品指数","QDII-指数","YIFANGDABIAOPUXIAOFEIPINZHISHU"],["121001","GTRYRHZQ","国投瑞银融华债券","混合型","GUOTOURUIYINRONGHUAZHAIQUAN"],["121002","GTRYJQHYHH","国投瑞银景气行业混合","混合型","GUOTOURUIYINJINGQIHANGYEHUNHE"],["121003","GTRYHXQYHH","国投瑞银核心企业混合","混合型","GUOTOURUIYINHEXINQIYEHUNHE"],["121005","GTRYCXDLHH","国投瑞银创新动力混合","混合型","GUOTOURUIYINCHUANGXINDONGLIHUNHE"],["121006","GTRYWJZZ","国投瑞银稳健增长","混合型","GUOTOURUIYINWENJIANZENGZHANG"],["121008","GTRYCZYXHH","国投瑞银成长优选混合","混合型","GUOTOURUIYINCHENGZHANGYOUXUANHUNHE"],["121009","GTRYWDZLZQA","国投瑞银稳定增利债券A","债券型","GUOTOURUIYINWENDINGZENGLIZHAIQUANA"],["121010","GTRYRYBB","国投瑞银瑞源保本","保本型","GUOTOURUIYINRUIYUANBAOBEN"],["121011","GTRYHBA","国投瑞银货币A","货币型","GUOTOURUIYINHUOBIA"],["121012","GTRYYHQZA/B","国投瑞银优化强债A/B","债券型","GUOTOURUIYINYOUHUAQIANGZHAIA/B"],["121013","GTRYCZA","国投瑞银纯债A","债券型","GUOTOURUIYINCHUNZHAIA"],["128001","GTRYRHZQ","国投瑞银融华债券(后端)","混合型","GUOTOURUIYINRONGHUAZHAIQUAN"],["128002","GTRYJQHYHH","国投瑞银景气行业混合(后端)","混合型","GUOTOURUIYINJINGQIHANGYEHUNHE"],["128005","GTRYCXDLHH","国投瑞银创新动力混合(后端)","混合型","GUOTOURUIYINCHUANGXINDONGLIHUNHE"],["128006","GTRYWJZZ","国投瑞银稳健增长(后端)","混合型","GUOTOURUIYINWENJIANZENGZHANG"],["128008","GTRYCZYXHH","国投瑞银成长优选混合(后端)","混合型","GUOTOURUIYINCHENGZHANGYOUXUANHUNHE"],["128011","GTRYHBB","国投瑞银货币B","货币型","GUOTOURUIYINHUOBIB"],["128012","GTRYYHQZA/B","国投瑞银优化强债A/B(后端)","债券型","GUOTOURUIYINYOUHUAQIANGZHAIA/B"],["128013","GTRYCZB","国投瑞银纯债B","债券型","GUOTOURUIYINCHUNZHAIB"],["128112","GTRYYHQZC","国投瑞银优化强债C","债券型","GUOTOURUIYINYOUHUAQIANGZHAIC"],["150005","YHYFHBA","银河银富货币A","货币型","YINHEYINFUHUOBIA"],["150008","GTRYRHXK","国投瑞银瑞和小康","固定收益","GUOTOURUIYINRUIHEXIAOKANG"],["150009","GTRYRHYJ","国投瑞银瑞和远见","分级杠杆","GUOTOURUIYINRUIHEYUANJIAN"],["150012","GLASXZZ100A","国联安双禧中证100A","固定收益","GUOLIANANSHUANGXIZHONGZHENG100A"],["150013","GLASXZZ100B","国联安双禧中证100B","分级杠杆","GUOLIANANSHUANGXIZHONGZHENG100B"],["150015","YHYFHBB","银河银富货币B","货币型","YINHEYINFUHUOBIB"],["150016","XQHRFJHHA","兴全合润分级混合A","固定收益","XINGQUANHERUNFENJIHUNHEA"],["150017","XQHRFJHHB","兴全合润分级混合B","分级杠杆","XINGQUANHERUNFENJIHUNHEB"],["150018","YHWJ","银华稳进","固定收益","YINHUAWENJIN"],["150019","YHRJ","银华锐进","分级杠杆","YINHUARUIJIN"],["150020","FGHLHBFJZQA","富国汇利回报分级债券A","固定收益","FUGUOHUILIHUIBAOFENJIZHAIQUANA"],["150021","FGHLHBFJZQB","富国汇利回报分级债券B","分级杠杆","FUGUOHUILIHUIBAOFENJIZHAIQUANB"],["150022","SWLXSZCZFJSY","申万菱信深证成指分级收益","固定收益","SHENWANLINGXINSHENZHENGCHENGZHIFENJISHOUYI"],["150023","SWLXSZCZFJJQ","申万菱信深证成指分级进取","分级杠杆","SHENWANLINGXINSHENZHENGCHENGZHIFENJIJINQU"],["150028","XCZZ500A","信诚中证500A","固定收益","XINCHENGZHONGZHENG500A"],["150029","XCZZ500B","信诚中证500B","分级杠杆","XINCHENGZHONGZHENG500B"],["150030","YHZZDQ90JL","银华中证等权90金利","固定收益","YINHUAZHONGZHENGDENGQUAN90JINLI"],["150031","YHZZDQ90XL","银华中证等权90鑫利","分级杠杆","YINHUAZHONGZHENGDENGQUAN90XINLI"],["150032","JSDLYX","嘉实多利优先","固定收益","JIASHIDUOLIYOUXIAN"],["150033","JSDLJQ","嘉实多利进取","分级杠杆","JIASHIDUOLIJINQU"],["150036","JXWJ","建信稳健","固定收益","JIANXINWENJIAN"],["150037","JXJQ","建信进取","分级杠杆","JIANXINJINQU"],["150039","ZODLFJZQA","中欧鼎利分级债券A","固定收益","ZHONGOUDINGLIFENJIZHAIQUANA"],["150040","ZODLFJZQB","中欧鼎利分级债券B","分级杠杆","ZHONGOUDINGLIFENJIZHAIQUANB"],["150047","YHXFA","银华消费A","固定收益","YINHUAXIAOFEIA"],["150048","YHXFB","银华消费B","分级杠杆","YINHUAXIAOFEIB"],["150049","NFXFSY","南方消费收益","固定收益","NANFANGXIAOFEISHOUYI"],["150050","NFXFJQ","南方消费进取","分级杠杆","NANFANGXIAOFEIJINQU"],["150051","XCHS300FJA","信诚沪深300分级A","固定收益","XINCHENGHUSHEN300FENJIA"],["150052","XCHS300FJB","信诚沪深300分级B","分级杠杆","XINCHENGHUSHEN300FENJIB"],["150053","TDZZ500WJ","泰达中证500稳健","固定收益","TAIDAZHONGZHENG500WENJIAN"],["150054","TDZZ500JQ","泰达中证500进取","分级杠杆","TAIDAZHONGZHENG500JINQU"],["150055","GYZZ500FJA","工银中证500分级A","固定收益","GONGYINZHONGZHENG500FENJIA"],["150056","GYZZ500FJB","工银中证500分级B","分级杠杆","GONGYINZHONGZHENG500FENJIB"],["150057","CCJZZXBWJ","长城久兆中小板稳健","固定收益","CHANGCHENGJIUZHAOZHONGXIAOBANWENJIAN"],["150058","CCJZZXBJJ","长城久兆中小板积极","分级杠杆","CHANGCHENGJIUZHAOZHONGXIAOBANJIJI"],["150059","YHJR","银华金瑞","固定收益","YINHUAJINRUI"],["150060","YHXR","银华鑫瑞","分级杠杆","YINHUAXINRUI"],["150064","CSTR200FJA","长盛同瑞200分级A","固定收益","CHANGSHENGTONGRUI200FENJIA"],["150065","CSTR200FJB","长盛同瑞200分级B","分级杠杆","CHANGSHENGTONGRUI200FENJIB"],["150066","GTHLFJZQA","国泰互利分级债券A","固定收益","GUOTAIHULIFENJIZHAIQUANA"],["150067","GTHLFJZQB","国泰互利分级债券B","分级杠杆","GUOTAIHULIFENJIZHAIQUANB"],["150073","NAWJ","诺安稳健","固定收益","NUOANWENJIAN"],["150075","NAJQ","诺安进取","分级杠杆","NUOANJINQU"],["150076","ZSWJ","浙商稳健","固定收益","ZHESHANGWENJIAN"],["150077","ZSJQ","浙商进取","分级杠杆","ZHESHANGJINQU"],["150083","GFSZ100A","广发深证100A","固定收益","GUANGFASHENZHENG100A"],["150084","GFSZ100B","广发深证100B","分级杠杆","GUANGFASHENZHENG100B"],["150085","SWZXBFJA","申万中小板分级A","固定收益","SHENWANZHONGXIAOBANFENJIA"],["150086","SWZXBFJB","申万中小板分级B","分级杠杆","SHENWANZHONGXIAOBANFENJIB"],["150090","WJZCZSFJA","万家中创指数分级A","固定收益","WANJIAZHONGCHUANGZHISHUFENJIA"],["150091","WJZCZSFJB","万家中创指数分级B","分级杠杆","WANJIAZHONGCHUANGZHISHUFENJIB"],["150092","NDSZ300ZSFJA","诺德深证300指数分级A","固定收益","NUODESHENZHENG300ZHISHUFENJIA"],["150093","NDSZ300ZSFJB","诺德深证300指数分级B","分级杠杆","NUODESHENZHENG300ZHISHUFENJIB"],["150094","TXJBM400A","泰信基本面400A","固定收益","TAIXINJIBENMIAN400A"],["150095","TXJBM400B","泰信基本面400B","分级杠杆","TAIXINJIBENMIAN400B"],["150096","ZSZZSPA","招商中证商品A","固定收益","ZHAOSHANGZHONGZHENGSHANGPINA"],["150097","ZSZZSPB","招商中证商品B","分级杠杆","ZHAOSHANGZHONGZHENGSHANGPINB"],["150100","PHZYFJA","鹏华资源分级A","固定收益","PENGHUAZIYUANFENJIA"],["150101","PHZYFJB","鹏华资源分级B","分级杠杆","PENGHUAZIYUANFENJIB"],["150103","YHYTLC","银河银泰理财","混合型","YINHEYINTAILICAI"],["150104","HAHS300ZSFJA","华安沪深300指数分级A","固定收益","HUAANHUSHEN300ZHISHUFENJIA"],["150105","HAHS300ZSFJB","华安沪深300指数分级B","分级杠杆","HUAANHUSHEN300ZHISHUFENJIB"],["150106","YFDWJ","易方达稳健","固定收益","YIFANGDAWENJIAN"],["150107","YFDJQ","易方达进取","分级杠杆","YIFANGDAJINQU"],["150108","CSTHS100DQZA","长盛同辉深100等权重A","固定收益","CHANGSHENGTONGHUISHEN100DENGQUANZHONGA"],["150109","CSTHS100DQZB","长盛同辉深100等权重B","分级杠杆","CHANGSHENGTONGHUISHEN100DENGQUANZHONGB"],["150112","SZ100A","深证100A","固定收益","SHENZHENG100A"],["150113","SZ100B","深证100B","分级杠杆","SHENZHENG100B"],["150117","GTGZFDCHYZSFJA","国泰国证房地产行业指数分级A","固定收益","GUOTAIGUOZHENGFANGDICHANHANGYEZHISHUFENJIA"],["150118","GTGZFDCHYZSFJB","国泰国证房地产行业指数分级B","分级杠杆","GUOTAIGUOZHENGFANGDICHANHANGYEZHISHUFENJIB"],["150121","YHHS300CZYX","银河沪深300成长优先","固定收益","YINHEHUSHEN300CHENGZHANGYOUXIAN"],["150122","YHHS300CZJQ","银河沪深300成长进取","分级杠杆","YINHEHUSHEN300CHENGZHANGJINQU"],["150123","JXYS50A","建信央视50A","固定收益","JIANXINYANGSHI50A"],["150124","JXYS50B","建信央视50B","分级杠杆","JIANXINYANGSHI50B"],["150130","GTGZYYWSHYZSFJA","国泰国证医药卫生指数分级A","固定收益","GUOTAIGUOZHENGYIYAOWEISHENGZHISHUFENJIA"],["150131","GTGZYYWSHYZSFJB","国泰国证医药卫生指数分级B","分级杠杆","GUOTAIGUOZHENGYIYAOWEISHENGZHISHUFENJIB"],["150133","DBDXZGQZZSFJA","德邦德信中高企债指数分级A","固定收益","DEBANGDEXINZHONGGAOQIZHAIZHISHUFENJIA"],["150134","DBDXZGQZZSFJB","德邦德信中高企债指数分级B","分级杠杆","DEBANGDEXINZHONGGAOQIZHAIZHISHUFENJIB"],["150135","GFZZ100ZSZQFJA","国富中证100指数增强分级A","固定收益","GUOFUZHONGZHENG100ZHISHUZENGQIANGFENJIA"],["150136","GFZZ100ZSZQFJB","国富中证100指数增强分级B","分级杠杆","GUOFUZHONGZHENG100ZHISHUZENGQIANGFENJIB"],["150138","YH800A","银华800A","固定收益","YINHUA800A"],["150139","YH800B","银华800B","分级杠杆","YINHUA800B"],["150140","GJ300A","国金300A","固定收益","GUOJIN300A"],["150141","GJHS300ZSFJB","国金沪深300指数分级B","分级杠杆","GUOJINHUSHEN300ZHISHUFENJIB"],["150143","YHZZZZZSZQFJA","银华中证转债指数增强分级A","固定收益","YINHUAZHONGZHENGZHUANZHAIZHISHUZENGQIANGFENJIA"],["150144","YHZZZZZSZQFJB","银华中证转债指数增强分级B","分级杠杆","YINHUAZHONGZHENGZHUANZHAIZHISHUZENGQIANGFENJIB"],["150145","ZSHS300GBTFJA","招商沪深300高贝塔分级A","固定收益","QIAOSHANGHUSHEN300GAOBEIDAFENJIA"],["150146","ZSHS300GBTFJB","招商沪深300高贝塔分级B","分级杠杆","QIAOSHANGHUSHEN300GAOBEIDAFENJIB"],["150148","XCZZ800YYZSFJA","信诚中证800医药指数分级A","固定收益","XINCHENGZHONGZHENG800YIYAOZHISHUFENJIA"],["150149","XCZZ800YYZSFJB","信诚中证800医药指数分级B","分级杠杆","XINCHENGZHONGZHENG800YIYAOZHISHUFENJIB"],["150150","XCZZ800YSZSFJA","信诚中证800有色指数分级A","固定收益","XINCHENGZHONGZHENG800YOUSEZHISHUFENJIA"],["150151","XCZZ800YSZSFJB","信诚中证800有色指数分级B","分级杠杆","XINCHENGZHONGZHENG800YOUSEZHISHUFENJIB"],["150152","FGCYBZSFJA","富国创业板指数分级A","固定收益","FUGUOCHUANGYEBANZHISHUFENJIA"],["150153","FGCYBZSFJB","富国创业板指数分级B","分级杠杆","FUGUOCHUANGYEBANZHISHUFENJIB"],["150154","ZHHFCZFJZQB","中海惠丰纯债分级债券B","分级杠杆","ZHONGHAIHUIFENGCHUNZHAIFENJIZHAIQUANB"],["150156","ZYHLFJZQB","中银互利分级债券B","分级杠杆","ZHONGYINHULIFENJIZHAIQUANB"],["150157","XCZZ800JRZSFJA","信诚中证800金融指数分级A","固定收益","XINCHENGZHONGZHENG800JINRONGZHISHUFENJIA"],["150158","XCZZ800JRZSFJB","信诚中证800金融指数分级B","分级杠杆","XINCHENGZHONGZHENG800JINRONGZHISHUFENJIB"],["150159","ZOTB","中欧添B","分级杠杆","ZHONGOUTIANB"],["150162","YHYYFJZQB","银华永益分级债券B","分级杠杆","YINHUAYONGYIFENJIZHAIQUANB"],["150164","DWZZA","东吴转债A","固定收益","DONGWUZHUANZHAIA"],["150165","DWZZB","东吴转债B","分级杠杆","DONGWUZHUANZHAIB"],["150166","GFHLFJZQB","国富恒利分级债券B","债券型","GUOFUHENGLIFENJIZHAIQUANB"],["150167","YHHS300ZSFJA","银华沪深300指数分级A","固定收益","YINHUAHUSHEN300ZHISHUFENJIA"],["150168","YHHS300ZSFJB","银华沪深300指数分级B","分级杠杆","YINHUAHUSHEN300ZHISHUFENJIB"],["150169","HTFHSZSFJA","汇添富恒生指数分级A","固定收益","HUITIANFUHENGSHENGZHISHUFENJIA"],["150170","HTFHSZSFJB","汇添富恒生指数分级B","分级杠杆","HUITIANFUHENGSHENGZHISHUFENJIB"],["150171","SWLXSWZQFJA","申万菱信申万证券分级A","固定收益","SHENWANLINGXINSHENWANZHENGQUANFENJIA"],["150172","SWLXSWZQFJB","申万菱信申万证券分级B","分级杠杆","SHENWANLINGXINSHENWANZHENGQUANFENJIB"],["150173","XCZZTMTCYZSFJA","信诚中证TMT产业指数分级A","固定收益","XINCHENGZHONGZHENGTMTCHANYEZHISHUFENJIA"],["150174","XCZZTMTCYZSFJB","信诚中证TMT产业指数分级B","分级杠杆","XINCHENGZHONGZHENGTMTCHANYEZHISHUFENJIB"],["150175","YHHSGQZSFJA","银华恒生国企指数分级A","固定收益","YINHUAHENGSHENGGUOQIZHISHUFENJIA"],["150176","YHHSGQZSFJB","银华恒生国企指数分级B","分级杠杆","YINHUAHENGSHENGGUOQIZHISHUFENJIB"],["150177","PHZQBXFJA","鹏华证券保险分级A","固定收益","PENGHUAZHENGQUANBAOXIANFENJIA"],["150178","PHZQBXFJB","鹏华证券保险分级B","分级杠杆","PENGHUAZHENGQUANBAOXIANFENJIB"],["150179","PHXXFJA","鹏华信息分级A","固定收益","PENGHUAXINXIFENJIA"],["150180","PHXXFJB","鹏华信息分级B","分级杠杆","PENGHUAXINXIFENJIB"],["150181","FGZZJGZSFJA","富国中证军工指数分级A","固定收益","FUGUOZHONGZHENGJUNGONGZHISHUFENJIA"],["150182","FGZZJGZSFJB","富国中证军工指数分级B","分级杠杆","FUGUOZHONGZHENGJUNGONGZHISHUFENJIB"],["150184","SWZZHBCYZSFJA","申万中证环保产业指数分级A","固定收益","SHENWANZHONGZHENGHUANBAOCHANYEZHISHUFENJIA"],["150185","SWZZHBCYZSFJB","申万中证环保产业指数分级B","分级杠杆","SHENWANZHONGZHENGHUANBAOCHANYEZHISHUFENJIB"],["150186","SWLXZZJGZSFJA","申万菱信中证军工指数分级A","固定收益","SHENWANLINGXINZHONGZHENGJUNGONGZHISHUFENJIA"],["150187","SWLXZZJGZSFJB","申万菱信中证军工指数分级B","分级杠杆","SHENWANLINGXINZHONGZHENGJUNGONGZHISHUFENJIB"],["150188","ZSKZZFJZQA","招商可转债分级债券A","固定收益","ZHAOSHANGKEZHUANZHAIFENJIZHAIQUANA"],["150189","ZSKZZFJZQB","招商可转债分级债券B","分级杠杆","ZHAOSHANGKEZHUANZHAIFENJIZHAIQUANB"],["150190","XHZZHBCYZSFJA","新华中证环保产业指数分级A","固定收益","XINHUAZHONGZHENGHUANBAOCHANYEZHISHUFENJIA"],["150191","XHZZHBCYZSFJB","新华中证环保产业指数分级B","分级杠杆","XINHUAZHONGZHENGHUANBAOCHANYEZHISHUFENJIB"],["150192","PHDCFJA","鹏华地产分级A","固定收益","PENGHUADICHANFENJIA"],["150193","PHDCFJB","鹏华地产分级B","分级杠杆","PENGHUADICHANFENJIB"],["150194","FGZZYDHLWZSFJA","富国中证移动互联网指数分级A","固定收益","FUGUOZHONGZHENGYIDONGHULIANWANGZHISHUFENJIA"],["150195","FGZZYDHLWZSFJB","富国中证移动互联网指数分级B","分级杠杆","FUGUOZHONGZHENGYIDONGHULIANWANGZHISHUFENJIB"],["150196","GTGZYSJSHYFJA","国泰国证有色金属行业分级A","固定收益","GUOTAIGUOZHENGYOUSEJINSHUHANGYEFENJIA"],["150197","GTGZYSJSHYFJB","国泰国证有色金属行业分级B","分级杠杆","GUOTAIGUOZHENGYOUSEJINSHUHANGYEFENJIB"],["150198","GTGZSPYLHYZSA","国泰国证食品饮料行业指数A","固定收益","GUOTAIGUOZHENGSHIPINYINLIAOHANGYEZHISHUA"],["150199","GTGZSPYLHYZSB","国泰国证食品饮料行业指数B","分级杠杆","GUOTAIGUOZHENGSHIPINYINLIAOHANGYEZHISHUB"],["150200","ZSZZQZZQGSA","招商中证全指证券公司A","固定收益","QIAOSHANGZHONGZHENGQUANZHIZHENGQUANGONGSIA"],["150201","ZSZZQZZQGSB","招商中证全指证券公司B","分级杠杆","QIAOSHANGZHONGZHENGQUANZHIZHENGQUANGONGSIB"],["150203","PHCMFJA","鹏华传媒分级A ","固定收益","PENGHUACHUANMEIFENJIA"],["150204","PHCMFJB","鹏华传媒分级B","分级杠杆","PENGHUACHUANMEIFENJIB"],["150205","PHZZGFZSFJA","鹏华中证国防指数分级A","固定收益","PENGHUAZHONGZHENGGUOFANGZHISHUFENJIA"],["150206","PHZZGFZSFJB","鹏华中证国防指数分级B","分级杠杆","PENGHUAZHONGZHENGGUOFANGZHISHUFENJIB"],["150207","ZSHS300DCZSFJA","招商沪深300地产指数分级A","固定收益","QIAOSHANGHUSHEN300DECHANZHISHUFENJIA"],["150208","ZSHS300DCZSFJB","招商沪深300地产指数分级B","分级杠杆","QIAOSHANGHUSHEN300DECHANZHISHUFENJIB"],["150209","FGZZGQGGZSFJA","富国中证国企改革指数分级A","固定收益","FUGUOZHONGZHENGGUOQIGAIGEZHISHUFENJIA"],["150210","FGZZGQGGZSFJB","富国中证国企改革指数分级B ","分级杠杆","FUGUOZHONGZHENGGUOQIGAIGEZHISHUFENJIB"],["150211","FGZZXNYQCZSFJA","富国中证新能源汽车指数分级A","固定收益","FUGUOZHONGZHENGXINNENGYUANQICHEZHISHUFENJIA"],["150212","FGZZXNYQCZSFJB","富国中证新能源汽车指数分级B","分级杠杆","FUGUOZHONGZHENGXINNENGYUANQICHEZHISHUFENJIB"],["150213","GTRYZZCYZSFJA","国投瑞银中证创业指数分级A","固定收益","GUOTOURUIYINZHONGZHENGCHUANGYEZHISHUFENJIA"],["150214","GTRYZZCYZSFJB","国投瑞银中证创业指数分级B","分级杠杆","GUOTOURUIYINZHONGZHENGCHUANGYEZHISHUFENJIB"],["150215","GTSZTMT50ZSFJA","国泰深证TMT50指数分级A","固定收益","GUOTAISHENZHENGTMT50ZHISHUFENJIA"],["150216","GTSZTMT50ZSFJB","国泰深证TMT50指数分级B","分级杠杆","GUOTAISHENZHENGTMT50ZHISHUFENJIB"],["150217","JYGZXNYZSFJA","交银国证新能源指数分级A","固定收益","JIAOYINGUOZHENGXINNENGYUANZHISHUFENJIA"],["150218","JYGZXNYZSFJB","交银国证新能源指数分级B","分级杠杆","JIAOYINGUOZHENGXINNENGYUANZHISHUFENJIB"],["150219","QHKYJKFJA","前海开源健康分级A","固定收益","QIANHAIKAIYUANJIANKANGFENJIA"],["150220","QHKYJKFJB","前海开源健康分级B","分级杠杆","QIANHAIKAIYUANJIANKANGFENJIB"],["150221","QHKYZHJGA","前海开源中航军工A","固定收益","QIANHAIKAIYUANZHONGHANGJUNGONGA"],["150222","QHKYZHJGB","前海开源中航军工B","分级杠杆","QIANHAIKAIYUANZHONGHANGJUNGONGB"],["150223","FGZZQZZQGSFJA","富国中证全指证券公司分级A","固定收益","FUGUOZHONGZHENGQUANZHIZHENGQUANGONGSIFENJIA"],["150224","FGZZQZZQGSFJB","富国中证全指证券公司分级B","分级杠杆","FUGUOZHONGZHENGQUANZHIZHENGQUANGONGSIFENJIB"],["150225","BSZZ800ZQBXFJA","博时中证800证券保险分级A","固定收益","BOSHIZHONGZHENG800ZHENGQUANBAOXIANFENJIA"],["150226","BSZZ800ZQBXFJB","博时中证800证券保险分级B","分级杠杆","BOSHIZHONGZHENG800ZHENGQUANBAOXIANFENJIB"],["150227","PHYHFJA","鹏华银行分级A","固定收益","PENGHUAYINHANGFENJIA"],["150228","PHYHFJB","鹏华银行分级B","分级杠杆","PENGHUAYINHANGFENJIB"],["150229","PHJFJA","鹏华酒分级A","固定收益","PENGHUAJIUFENJIA"],["150230","PHJFJB","鹏华酒分级B","分级杠杆","PENGHUAJIUFENJIB"],["150231","SWLXSWDZFJA","申万菱信申万电子分级A","固定收益","SHENWANLINGXINSHENWANDIANZIFENJIA"],["150232","SWLXSWDZFJB","申万菱信申万电子分级B","分级杠杆","SHENWANLINGXINSHENWANDIANZIFENJIB"],["150233","SWLXSWCMFJA","申万菱信申万传媒分级A","固定收益","SHENWANLINGXINSHENWANCHUANMEIFENJIA"],["150234","SWLXSWCMFJB","申万菱信申万传媒分级B","分级杠杆","SHENWANLINGXINSHENWANCHUANMEIFENJIB"],["150235","PHZQFJA","鹏华证券分级A","固定收益","PENGHUAZHENGQUANFENJIA"],["150236","PHZQFJB","鹏华证券分级B","分级杠杆","PENGHUAZHENGQUANFENJIB"],["150237","PHHBFJA","鹏华环保分级A","固定收益","PENGHUAHUANBAOFENJIA"],["150238","PHHBFJB","鹏华环保分级B","分级杠杆","PENGHUAHUANBAOFENJIB"],["150241","FGZZYHZSFJA","富国中证银行指数分级A","固定收益","FUGUOZHONGZHENGYINHANGZHISHUFENJIA"],["150242","FGZZYHZSFJB","富国中证银行指数分级B","分级杠杆","FUGUOZHONGZHENGYINHANGZHISHUFENJIB"],["150243","PHCYBFJA","鹏华创业板分级A","固定收益","PENGHUACHUANGYEBANFENJIA"],["150244","PHCYBFJB","鹏华创业板分级B","分级杠杆","PENGHUACHUANGYEBANFENJIB"],["150245","PHHLWFJA","鹏华互联网分级A","固定收益","PENGHUAHULIANWANGFENJIA"],["150246","PHHLWFJB","鹏华互联网分级B","分级杠杆","PENGHUAHULIANWANGFENJIB"],["150247","GYZZCMZSFJA","工银中证传媒指数分级A","固定收益","GONGYINZHONGZHENGCHUANMEIZHISHUFENJIA"],["150248","GYZZCMZSFJB","工银中证传媒指数分级B","分级杠杆","GONGYINZHONGZHENGCHUANMEIZHISHUFENJIB"],["150249","ZSZZYHZSFJA","招商中证银行指数分级A","固定收益","ZHAOSHANGZHONGZHENGYINHANGZHISHUFENJIA"],["150250","ZSZZYHZSFJB","招商中证银行指数分级B","分级杠杆","ZHAOSHANGZHONGZHENGYINHANGZHISHUFENJIB"],["150251","ZSZZMTDQZSFJA","招商中证煤炭等权指数分级A","固定收益","ZHAOSHANGZHONGZHENGMEITANDENGQUANZHISHUFENJIA"],["150252","ZSZZMTDQZSFJB","招商中证煤炭等权指数分级B","分级杠杆","ZHAOSHANGZHONGZHENGMEITANDENGQUANZHISHUFENJIB"],["150255","YFDYHFJA","易方达银行分级A","固定收益","YIFANGDAYINHANGFENJIA"],["150256","YFDYHFJB","易方达银行分级B","分级杠杆","YIFANGDAYINHANGFENJIB"],["150257","YFDSWFJA","易方达生物分级A","固定收益","YIFANGDASHENGWUFENJIA"],["150258","YFDSWFJB","易方达生物分级B","分级杠杆","YIFANGDASHENGWUFENJIB"],["150259","YFDCZFJA","易方达重组分级A","固定收益","YIFANGDACHONGZUFENJIA"],["150260","YFDCZFJB","易方达重组分级B","分级杠杆","YIFANGDACHONGZUFENJIB"],["150261","HBXYZZYLZSFJA","华宝兴业中证医疗指数分级A","固定收益","HUABAOXINGYEZHONGZHENGYILIAOZHISHUFENJIA"],["150262","HBXYZZYLZSFJB","华宝兴业中证医疗指数分级B","分级杠杆","HUABAOXINGYEZHONGZHENGYILIAOZHISHUFENJIB"],["150263","HBXYZZ1000FJA","华宝兴业中证1000分级A","固定收益","HUABAOXINGYEZHONGZHENG1000FENJIA"],["150264","HBXYZZ1000FJB","华宝兴业中证1000分级B","分级杠杆","HUABAOXINGYEZHONGZHENG1000FENJIB"],["150265","ZRYDYLFJA","中融一带一路分级A","固定收益","ZHONGRONGYIDAIYILUFENJIA"],["150266","ZRYDYLFJB","中融一带一路分级B","分级杠杆","ZHONGRONGYIDAIYILUFENJIB"],["150267","BSZZYHZSFJA","博时中证银行指数分级A","固定收益","BOSHIZHONGZHENGYINHANGZHISHUFENJIA"],["150268","BSZZYHZSFJB","博时中证银行指数分级B","分级杠杆","BOSHIZHONGZHENGYINHANGZHISHUFENJIB"],["150269","ZSZZBJZSFJA","招商中证白酒指数分级A","固定收益","ZHAOSHANGZHONGZHENGBAIJIUZHISHUFENJIA"],["150270","ZSZZBJZSFJB","招商中证白酒指数分级B","分级杠杆","ZHAOSHANGZHONGZHENGBAIJIUZHISHUFENJIB"],["150271","ZSGZSWYYZSFJA","招商国证生物医药指数分级A","固定收益","ZHAOSHANGGUOZHENGSHENGWUYIYAOZHISHUFENJIA"],["150272","ZSGZSWYYZSFJB","招商国证生物医药指数分级B","分级杠杆","ZHAOSHANGGUOZHENGSHENGWUYIYAOZHISHUFENJIB"],["150273","PHYDYLFJA","鹏华一带一路分级A","固定收益","PENGHUAYIDAIYILUFENJIA"],["150274","PHYDYLFJB","鹏华一带一路分级B","分级杠杆","PENGHUAYIDAIYILUFENJIB"],["150275","AXYDYLFJA","安信一带一路分级A","固定收益","ANXINYIDAIYILUFENJIA"],["150276","AXYDYLFJB","安信一带一路分级B","分级杠杆","ANXINYIDAIYILUFENJIB"],["150277","PHGTFJA","鹏华高铁分级A","固定收益","PENGHUAGAOTIEFENJIA"],["150278","PHGTFJB","鹏华高铁分级B","分级杠杆","PENGHUAGAOTIEFENJIB"],["150279","PHXNYFJA","鹏华新能源分级A","固定收益","PENGHUAXINNENGYUANFENJIA"],["150280","PHXNYFJB","鹏华新能源分级B","分级杠杆","PENGHUAXINNENGYUANFENJIB"],["150281","CSZZJRDCZSFJA","长盛中证金融地产指数分级A","固定收益","CHANGSHENGZHONGZHENGJINRONGDICHANZHISHUFENJIA"],["150282","CSZZJRDCZSFJB","长盛中证金融地产指数分级B","分级杠杆","CHANGSHENGZHONGZHENGJINRONGDICHANZHISHUFENJIB"],["150283","SWLXSWYYSWFJA","申万菱信申万医药生物分级A","固定收益","SHENWANLINGXINSHENWANYIYAOSHENGWUFENJIA"],["150284","SWLXSWYYSWFJB","申万菱信申万医药生物分级B","分级杠杆","SHENWANLINGXINSHENWANYIYAOSHENGWUFENJIB"],["150287","ZRGZGTHYZSFJA","中融国证钢铁行业指数分级A","固定收益","ZHONGRONGGUOZHENGGANGTIEHANGYEZHISHUFENJIA"],["150288","ZRGZGTHYZSFJB","中融国证钢铁行业指数分级B","分级杠杆","ZHONGRONGGUOZHENGGANGTIEHANGYEZHISHUFENJIB"],["150289","ZRZZMTZSFJA","中融中证煤炭指数分级A","固定收益","ZHONGRONGZHONGZHENGMEITANZHISHUFENJIA"],["150290","ZRZZMTZSFJB","中融中证煤炭指数分级B","分级杠杆","ZHONGRONGZHONGZHENGMEITANZHISHUFENJIB"],["150291","ZRZZYHZSFJA","中融中证银行指数分级A","固定收益","ZHONGRONGZHONGZHENGYINHANGZHISHUFENJIA"],["150292","ZRZZYHZSFJB","中融中证银行指数分级B","分级杠杆","ZHONGRONGZHONGZHENGYINHANGZHISHUFENJIB"],["150293","NFZZGTCYZSFJA","南方中证高铁产业指数分级A","固定收益","NANFANGZHONGZHENGGAOTIECHANYEZHISHUFENJIA"],["150294","NFZZGTCYZSFJB","南方中证高铁产业指数分级B","分级杠杆","NANFANGZHONGZHENGGAOTIECHANYEZHISHUFENJIB"],["150295","NFZZGYQYGGFJA","南方中证国有企业改革分级A","固定收益","NANFANGZHONGZHENGGUOYOUQIYEGAIGEFENJIA"],["150296","NFZZGYQYGGFJB","南方中证国有企业改革分级B","分级杠杆","NANFANGZHONGZHENGGUOYOUQIYEGAIGEFENJIB"],["150297","NFZZHLWZSFJA","南方中证互联网指数分级A","固定收益","NANFANGZHONGZHENGHULIANWANGZHISHUFENJIA"],["150298","NFZZHLWZSFJB","南方中证互联网指数分级B","分级杠杆","NANFANGZHONGZHENGHULIANWANGZHISHUFENJIB"],["150299","HAZZYHZSFJA","华安中证银行指数分级A","固定收益","HUAANZHONGZHENGYINHANGZHISHUFENJIA"],["150300","HAZZYHZSFJB","华安中证银行指数分级B","分级杠杆","HUAANZHONGZHENGYINHANGZHISHUFENJIB"],["150301","HAZZQZZQGSFJA","华安中证全指证券公司分级A","固定收益","HUAANZHONGZHENGQUANZHIZHENGQUANGONGSIFENJIA"],["150302","HAZZQZZQGSFJB","华安中证全指证券公司分级B","分级杠杆","HUAANZHONGZHENGQUANZHIZHENGQUANGONGSIFENJIB"],["150303","HACYB50ZSFJA","华安创业板50指数分级A","固定收益","HUAANCHUANGYEBAN50ZHISHUFENJIA"],["150304","HACYB50ZSFJB","华安创业板50指数分级B","分级杠杆","HUAANCHUANGYEBAN50ZHISHUFENJIB"],["150305","GSABZZYLCYFJA","国寿安保中证养老产业分级A","固定收益","GUOSHOUANBAOZHONGZHENGYANGLAOCHANYEFENJIA"],["150306","GSABZZYLCYFJB","国寿安保中证养老产业分级B","分级杠杆","GUOSHOUANBAOZHONGZHENGYANGLAOCHANYEFENJIB"],["150307","FGZZTYCYZSFJA","富国中证体育产业指数分级A","固定收益","FUGUOZHONGZHENGTIYUCHANYEZHISHUFENJIA"],["150308","FGZZTYCYZSFJB","富国中证体育产业指数分级B","分级杠杆","FUGUOZHONGZHENGTIYUCHANYEZHISHUFENJIB"],["150309","XCZZXXAQZSFJA","信诚中证信息安全指数分级A","固定收益","XINCHENGZHONGZHENGXINXIANQUANZHISHUFENJIA"],["150310","XCZZXXAQZSFJB","信诚中证信息安全指数分级B","分级杠杆","XINCHENGZHONGZHENGXINXIANQUANZHISHUFENJIB"],["150311","XCZZZNJJZSFJA","信诚中证智能家居指数分级A","固定收益","XINCHENGZHONGZHENGZHINENGJIAJUZHISHUFENJIA"],["150312","XCZZZNJJZSFJB","信诚中证智能家居指数分级B","分级杠杆","XINCHENGZHONGZHENGZHINENGJIAJUZHISHUFENJIB"],["150315","FGZZGY40ZSFJA","富国中证工业4.0指数分级A","固定收益","FUGUOZHONGZHENGGONGYE40ZHISHUFENJIA"],["150316","FGZZGY40ZSFJB","富国中证工业4.0指数分级B","分级杠杆","FUGUOZHONGZHENGGONGYE40ZHISHUFENJIB"],["150317","JYZZHLWJRZSFJA","交银中证互联网金融指数分级A","固定收益","JIAOYINZHONGZHENGHULIANWANGJINRONGZHISHUFENJIA"],["150318","JYZZHLWJRZSFJB","交银中证互联网金融指数分级B","分级杠杆","JIAOYINZHONGZHENGHULIANWANGJINRONGZHISHUFENJIB"],["150321","FGZZMTZSFJA","富国中证煤炭指数分级A","固定收益","FUGUOZHONGZHENGMEITANZHISHUFENJIA"],["150322","FGZZMTZSFJB","富国中证煤炭指数分级B","分级杠杆","FUGUOZHONGZHENGMEITANZHISHUFENJIB"],["150323","GYZZHBCYZSFJA","工银中证环保产业指数分级A","固定收益","GONGYINZHONGZHENGHUANBAOCHANYEZHISHUFENJIA"],["150324","GYZZHBCYZSFJB","工银中证环保产业指数分级B","分级杠杆","GONGYINZHONGZHENGHUANBAOCHANYEZHISHUFENJIB"],["150325","GYZZGTCYZSFJA","工银中证高铁产业指数分级A","固定收益","GONGYINZHONGZHENGGAOTIECHANYEZHISHUFENJIA"],["150326","GYZZGTCYZSFJB","工银中证高铁产业指数分级B","分级杠杆","GONGYINZHONGZHENGGAOTIECHANYEZHISHUFENJIB"],["150327","GYZZXNYZSFJA","工银中证新能源指数分级A","固定收益","GONGYINZHONGZHENGXINNENGYUANZHISHUFENJIA"],["150328","GYZZXNYZSFJB","工银中证新能源指数分级B","分级杠杆","GONGYINZHONGZHENGXINNENGYUANZHISHUFENJIB"],["150329","FZFBBXZTZSFJA","方正富邦保险主题指数分级A","固定收益","FANGZHENGFUBANGBAOXIANZHUTIZHISHUFENJIA"],["150330","FZFBBXZTZSFJB","方正富邦保险主题指数分级B","分级杠杆","FANGZHENGFUBANGBAOXIANZHUTIZHISHUFENJIB"],["150331","JXWJRFJA","建信网金融分级A","固定收益","JIANXINWANGJINRONGFENJIA"],["150332","JXWJRFJB","建信网金融分级B","分级杠杆","JIANXINWANGJINRONGFENJIB"],["150335","RTJGFJA","融通军工分级A","固定收益","RONGTONGJUNGONGFENJIA"],["150336","RTJGFJB","融通军工分级B","分级杠杆","RONGTONGJUNGONGFENJIB"],["150343","RTZQFJA","融通证券分级A","固定收益","RONGTONGZHENGQUANFENJIA"],["150344","RTZQFJB","融通证券分级B","分级杠杆","RONGTONGZHENGQUANFENJIB"],["151001","YHWJ","银河稳健","混合型","YINHEWENJIAN"],["151002","YHSYZQ","银河收益债券","债券型","YINHESHOUYIZHAIQUAN"],["159001","YFDBZJSYHBA","易方达保证金收益货币A","货币型","YIFANGDABAOZHENGJINSHOUYIHUOBIA"],["159002","YFDBZJSYHBB","易方达保证金收益货币B","货币型","YIFANGDABAOZHENGJINSHOUYIHUOBIB"],["159003","ZSBZJKXA","招商保证金快线A","货币型","ZHAOSHANGBAOZHENGJINKUAIXIANA"],["159004","ZSBZJKXB","招商保证金快线B","货币型","ZHAOSHANGBAOZHENGJINKUAIXIANB"],["159005","HTFSYKQHBA","汇添富收益快钱货币A","货币型","HUITIANFUSHOUYIKUAIQIANHUOBIA"],["159006","HTFSYKQHBB","汇添富收益快钱货币B","货币型","HUITIANFUSHOUYIKUAIQIANHUOBIB"],["159901","YFDSZ100ETF","易方达深证100ETF","ETF-场内","YIFANGDASHENZHENG100ETF"],["159902","HXZXBETF","华夏中小板ETF","ETF-场内","HUAXIAZHONGXIAOBANETF"],["159903","NFSCETF","南方深成ETF","ETF-场内","NANFANGSHENCHENGETF"],["159905","GYSZHLETF","工银深证红利ETF","ETF-场内","GONGYINSHENZHENGHONGLIETF"],["159906","DCSZCZ40ETF","大成深证成长40ETF","ETF-场内","DACHENGSHENZHENGCHENGZHANG40ETF"],["159907","GFZXB300ETF","广发中小板300ETF","ETF-场内","GUANGFAZHONGXIAOBAN300ETF"],["159908","BSSZ200ETF","博时深证200ETF","ETF-场内","BOSHISHENZHENG200ETF"],["159909","ZSSZTMT50ETF","招商深证TMT50ETF","ETF-场内","ZHAOSHANGSHENZHENGTMT50ETF"],["159910","JSSZ120ETF","嘉实深证120ETF","ETF-场内","JIASHISHENZHENG120ETF"],["159911","PHSZMYETF","鹏华深证民营ETF","ETF-场内","PENGHUASHENZHENGMINYINGETF"],["159912","HTFSZ300ETF","汇添富深证300ETF","ETF-场内","HUITIANFUSHENZHENG300ETF"],["159913","JYSZ300ETF","交银深证300ETF","ETF-场内","JIAOYINSHENZHENG300ETF"],["159915","YFDCYBETF","易方达创业板ETF","ETF-场内","YIFANGDACHUANGYEBANETF"],["159916","JXSZ60ETF","建信深证60ETF","ETF-场内","JIANXINSHENZHENG60ETF"],["159918","JSZC400ETF","嘉实中创400ETF","ETF-场内","JIASHIZHONGCHUANG400ETF"],["159919","JSHS300ETF","嘉实沪深300ETF","ETF-场内","JIASHIHUSHEN300ETF"],["159920","HXHSETF","华夏恒生ETF","QDII-ETF","HUAXIAHENGSHENGETF"],["159921","NAZXBDQZETF","诺安中小板等权重ETF","ETF-场内","NUOANZHONGXIAOBANDENGQUANZHONGETF"],["159922","JSZZ500ETF","嘉实中证500ETF","ETF-场内","JIASHIZHONGZHENG500ETF"],["159923","DCZZ100ETF","大成中证100ETF","ETF-场内","DACHENGZHONGZHENG100ETF"],["159924","JSHS300DQETF","景顺沪深300等权ETF","ETF-场内","JINGSHUNHUSHEN300DENGQUANETF"],["159925","NFKYHS300ETF","南方开元沪深300ETF","ETF-场内","NANFANGKAIYUANHUSHEN300ETF"],["159926","JSZZZQGZETF","嘉实中证中期国债ETF","ETF-场内","JIASHIZHONGZHENGZHONGQIGUOZHAIETF"],["159927","PHHS300ETF","鹏华沪深300ETF","ETF-场内","PENGHUAHUSHEN300ETF"],["159928","HTFZZZYXFETF","汇添富中证主要消费ETF","ETF-场内","HUITIANFUZHONGZHENGZHUYAOXIAOFEIETF"],["159929","HTFZZYYWSETF","汇添富中证医药卫生ETF","ETF-场内","HUITIANFUZHONGZHENGYIYAOWEISHENGETF"],["159930","HTFZZNYETF","汇添富中证能源ETF","ETF-场内","HUITIANFUZHONGZHENGNENGYUANETF"],["159931","HTFZZJRDCETF","汇添富中证金融地产ETF","ETF-场内","HUITIANFUZHONGZHENGJINRONGDICHANETF"],["159932","DCZZ500SSETF","大成中证500深市ETF","ETF-场内","DACHENGZHONGZHENG500SHENSHIETF"],["159933","GTRYJRDCETF","国投瑞银金融地产ETF","ETF-场内","GUOTOURUIYINJINRONGDICHANETF"],["159934","YFDHJETF","易方达黄金ETF","ETF-场内","YIFANGDAHUANGJINETF"],["159935","JSCCZZ500ETF","景顺长城中证500ETF","ETF-场内","JINGSHUNCHANGCHENGZHONGZHENG500ETF"],["159936","GFZZQZKXXFETF","广发中证全指可选消费ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIKEXUANXIAOFEIETF"],["159937","BSHJETF","博时黄金ETF","ETF-场内","BOSHIHUANGJINETF"],["159938","GFZZQZYYWSETF","广发中证全指医药卫生ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIYIYAOWEISHENGETF"],["159939","GFZZQZXXJSETF","广发中证全指信息技术ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIXINXIJISHUETF"],["159940","GFZZQZJRDCETF","广发中证全指金融地产ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIJINRONGDICHANETF"],["159941","GFNSDK100ETF","广发纳斯达克100ETF","QDII-ETF","GUANGFANASIDAKE100ETF"],["159942","HRYDZC100ETF","华润元大中创100ETF","ETF-场内","HUARUNYUANDAZHONGCHUANG100ETF"],["159943","DCSZCFETF","大成深证成份ETF","ETF-场内","DACHENGSHENZHENGCHENGFENETF"],["159944","GFZZQZYCLETF","广发中证全指原材料ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIYUANCAILIAOETF"],["159945","GFZZQZNYETF","广发中证全指能源ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHINENGYUANETF"],["159946","GFZZQZZYXFETF","广发中证全指主要消费ETF","ETF-场内","GUANGFAZHONGZHENGQUANZHIZHUYAOXIAOFEIETF"],["159948","NFCYBETF","南方创业板ETF","ETF-场内","NANFANGCHUANGYEBANETF"],["159949","HACYB50ETF","华安创业板50ETF","ETF-场内","HUAANCHUANGYEBAN50ETF"],["159950","YFDSZCZETF","易方达深证成指ETF","ETF-场内","YIFANGDASHENZHENGCHENGZHIETF"],["159952","GFCYBETF","广发创业板ETF","ETF-场内","GUANGFACHUANGYEBANETF"],["160105","NFJJPZHHLOF","南方积极配置混合(LOF)","混合型","NANFANGJIJIPEIZHIHUNHELOF"],["160106","NFGZZHHLOF","南方高增长混合(LOF)","混合型","NANFANGGAOZENGZHANGHUNHELOF"],["160107","NFGZZHHLOF","南方高增长混合(LOF)(后端)","混合型","NANFANGGAOZENGZHANGHUNHELOF"],["160119","NFZZ500ETFLJA","南方中证500ETF联接A","联接基金","NANFANGZHONGZHENG500ETFLIANJIEA"],["160120","NFZZ500ETFLJA","南方中证500ETF联接A(后端)","联接基金","NANFANGZHONGZHENG500ETFLIANJIEA"],["160121","NFJZSGZS","南方金砖四国指数","QDII-指数","NANFANGJINZHUANSIGUOZHISHU"],["160122","NFJZSGZS","南方金砖四国指数(后端)","QDII-指数","NANFANGJINZHUANSIGUOZHISHU"],["160123","NFZZ10NQGZA","南方中债10年期国债A","债券指数","NANFANGZHONGZHAI10NIANQIGUOZHAIA"],["160124","NFZZ10NQGZC","南方中债10年期国债C","债券指数","NANFANGZHONGZHAI10NIANQIGUOZHAIC"],["160125","NFXGYXGPQDII","南方香港优选股票(QDII)","QDII","NANFANGXIANGGANGYOUXUANGUPIAO(QDII)"],["160127","NFXXXFFJ","南方新兴消费分级","股票型","NANFANGXINXINGXIAOFEIFENJI"],["160128","NFJLA","南方金利A","定开债券","NANFANGJINLIA"],["160129","NFJLC","南方金利C","定开债券","NANFANGJINLIC"],["160130","NFYL1NDKZA","南方永利1年定开债A","定开债券","NANFANGYONGLI1NIANDINGKAIZHAIA"],["160131","NFJL1NDKZA","南方聚利1年定开债A","定开债券","NANFANGJULI1NIANDINGKAIZHAIA"],["160132","NFYLC","南方永利C","定开债券","NANFANGYONGLIC"],["160133","NFTY","南方天元","股票型","NANFANGTIANYUAN"],["160134","NFJLC","南方聚利C","定开债券","NANFANGJULIC"],["160135","NFZZGTCYZSFJ","南方中证高铁产业指数分级","股票指数","NANFANGZHONGZHENGGAOTIECHANYEZHISHUFENJI"],["160136","NFZZGYQYGGZSFJ","南方中证国有企业改革指数分级","股票指数","NANFANGZHONGZHENGGUOYOUQIYEGAIGEZHISHUFENJI"],["160137","NFZZHLWZSFJ","南方中证互联网指数分级","股票指数","NANFANGZHONGZHENGHULIANWANGZHISHUFENJI"],["160138","NFHSZGQYJMZSA","南方恒生中国企业精明指数A","QDII-指数","NANFANGHENGSHENGZHONGGUOQIYEJINGMINGZHISHUA"],["160139","NFHSZGQYJMZSC","南方恒生中国企业精明指数C","QDII-指数","NANFANGHENGSHENGZHONGGUOQIYEJINGMINGZHISHUC"],["160211","GTZXPCZHHLOF","国泰中小盘成长混合(LOF)","混合型","GUOTAIZHONGXIAOPANCHENGZHANGHUNHELOF"],["160212","GTGZYSHHLOF","国泰估值优势混合(LOF)","混合型","GUOTAIGUZHIYOUSHIHUNHELOF"],["160213","GTNSDK100ZS","国泰纳斯达克100指数","QDII-指数","GUOTAINASIDAKE100ZHISHU"],["160215","GTJZJDHHLOF","国泰价值经典混合(LOF)","混合型","GUOTAIJIAZHIJINGDIANHUNHELOF"],["160216","GTSP","国泰商品","QDII","GUOTAISHANGPIN"],["160217","GTHLFJZQ","国泰互利分级债券","债券型","GUOTAIHULIFENJIZHAIQUAN"],["160218","GTGZFDCHYZSFJ","国泰国证房地产行业指数分级","股票指数","GUOTAIGUOZHENGFANGDICHANHANGYEZHISHUFENJI"],["160219","GTGZYYWSHYZSFJ","国泰国证医药卫生指数分级","股票指数","GUOTAIGUOZHENGYIYAOWEISHENGZHISHUFENJI"],["160220","GTMYHHLOFA","国泰民益混合(LOF)A","混合型","GUOTAIMINYIHUNHE(LOF)A"],["160221","GTGZYSJSHYZSFJ","国泰国证有色金属行业指数分级","股票指数","GUOTAIGUOZHENGYOUSEJINSHUHANGYEZHISHUFENJI"],["160222","GTGZSPYLHYZSFJ","国泰国证食品饮料行业指数分级","股票指数","GUOTAIGUOZHENGSHIPINYINLIAOHANGYEZHISHUFENJI"],["160223","GTCYBZSLOF","国泰创业板指数(LOF)","股票指数","GUOTAICHUANGYEBANZHISHULOF"],["160224","GTSZTMT50ZSFJ","国泰深证TMT50指数分级","股票指数","GUOTAISHENZHENGTMT50ZHISHUFENJI"],["160225","GTGZXNYQCZS","国泰国证新能源汽车指数","股票指数","GUOTAIGUOZHENGXINNENGYUANQICHEZHISHU"],["160226","GTMYHHLOFC","国泰民益混合(LOF)C","混合型","GUOTAIMINYIHUNHE(LOF)C"],["160311","HXLC","华夏蓝筹","混合型","HUAXIALANCHOU"],["160314","HXHYHHLOF","华夏行业混合(LOF)","混合型","HUAXIAHANGYEHUNHELOF"],["160322","HXGGTJXGPLOF","华夏港股通精选股票LOF","股票型","HUAXIAGANGGUTONGJINGXUANGUPIAOLOF"],["160323","HXPTDKHHLOF","华夏磐泰定开混合(LOF)","混合型","HUAXIAPANTAIDINGKAIHUNHELOF"],["160415","HASZ300","华安深证300","股票指数","HUAANSHENZHENG300"],["160416","HABPSYZS","华安标普石油指数","QDII-指数","HUAANBIAOPUDANYOUZHISHU"],["160417","HAHS300ZSFJ","华安沪深300指数分级","股票指数","HUAANHUSHEN300ZHISHUFENJI"],["160418","HAZZYHZSFJ","华安中证银行指数分级","股票指数","HUAANZHONGZHENGYINHANGZHISHUFENJI"],["160419","HAZZQZZQGSZSFJ","华安中证全指证券公司指数分级","股票指数","HUAANZHONGZHENGQUANZHIZHENGQUANGONGSIZHISHUFENJI"],["160420","HACYB50ZSFJ","华安创业板50指数分级","股票指数","HUAANCHUANGYEBAN50ZHISHUFENJI"],["160421","HAZZJXHH","华安智增精选混合","混合型","HUAANZHIZENGJINGXUANHUNHE"],["160422","HAZZDXZF","华安中证定向增发","股票指数","HUAANZHONGZHENGDINGXIANGZENGFA"],["160505","BSZTHYHHLOF","博时主题行业混合(LOF)","混合型","BOSHIZHUTIHANGYEHUNHELOF"],["160512","BSZYPPHHLOF","博时卓越品牌混合(LOF)","混合型","BOSHIZHUOYUEPINPAIHUNHELOF"],["160513","BSWJHBZQLOFA","博时稳健回报债券(LOF)A","债券型","BOSHIWENJIANHUIBAOZHAIQUANLOFA"],["160514","BSWJHBZQLOFC","博时稳健回报债券(LOF)C","债券型","BOSHIWENJIANHUIBAOZHAIQUANLOFC"],["160515","BSAF18GYDKZA","博时安丰18个月定开债A","定开债券","BOSHIANFENG18GEYUEDINGKAIZHAIA"],["160516","BSZZ800ZQBXFJ","博时中证800证券保险分级","股票指数","BOSHIZHONGZHENG800ZHENGQUANBAOXIANFENJI"],["160517","BSZZYHZSFJ","博时中证银行指数分级","股票指数","BOSHIZHONGZHENGYINHANGZHISHUFENJI"],["160518","BSRY","博时睿远","混合型","BOSHIRUIYUAN"],["160519","BSRLDZ","博时睿利定增","混合型","BOSHIRUILIDINGZENG"],["160520","BSHYDQKFHHA","博时弘盈定期开放混合A","混合型","BOSHIHONGYINGDINGQIKAIFANGHUNHEA"],["160521","BSHYDQKFHHC","博时弘盈定期开放混合C","混合型","BOSHIHONGYINGDINGQIKAIFANGHUNHEC"],["160522","BSRY","博时睿益","混合型","BOSHIRUIYI"],["160523","BSAF18GYDKZC","博时安丰18个月定开债C","定开债券","BOSHIANFENG18GEYUEDINGKAIZHAIC"],["160524","BSHTHH","博时弘泰混合","混合型","BOSHIHONGTAIHUNHE"],["160525","BSRFDKHH","博时睿丰定开混合","混合型","BOSHIRUIFENGDINGKAIHUNHE"],["160602","PHPTZQA","鹏华普天债券A","债券型","PENGHUAPUTIANZHAIQUANA"],["160603","PHPTSY","鹏华普天收益","混合型","PENGHUAPUTIANSHOUYI"],["160605","PHZG50","鹏华中国50","混合型","PENGHUAZHONGGUO50"],["160606","PHHBA","鹏华货币A","货币型","PENGHUAHUOBIA"],["160607","PHJZYSHHLOF","鹏华价值优势混合(LOF)","混合型","PENGHUAJIAZHIYOUSHIHUNHELOF"],["160608","PHPTZQB","鹏华普天债券B","债券型","PENGHUAPUTIANZHAIQUANB"],["160609","PHHBB","鹏华货币B","货币型","PENGHUAHUOBIB"],["160610","PHDLZZ","鹏华动力增长","混合型","PENGHUADONGLIZENGZHANG"],["160611","PHYZZLHHLOF","鹏华优质治理混合(LOF)","混合型","PENGHUAYOUZHIZHILIHUNHELOF"],["160612","PHFSZQ","鹏华丰收债券","债券型","PENGHUAFENGSHOUZHAIQUAN"],["160613","PHSSCXHHLOF","鹏华盛世创新混合(LOF)","混合型","PENGHUASHENGSHICHUANGXINHUNHELOF"],["160615","PHHS300","鹏华沪深300","股票指数","PENGHUAHUSHEN300"],["160616","PHZZ500","鹏华中证500","股票指数","PENGHUAZHONGZHENG500"],["160617","PHFRZQLOF","鹏华丰润债券(LOF)","债券型","PENGHUAFENGRUNZHAIQUANLOF"],["160618","PHFZZQLOF","鹏华丰泽债券(LOF)","债券型","PENGHUAFENGZEZHAIQUANLOF"],["160620","PHZYFJ","鹏华资源分级","股票指数","PENGHUAZIYUANFENJI"],["160621","PHFHZQLOF","鹏华丰和债券(LOF)","债券型","PENGHUAFENGHEZHAIQUANLOF"],["160622","PHFLZQLOF","鹏华丰利债券(LOF)","债券型","PENGHUAFENGLIZHAIQUANLOF"],["160624","PHXFLXHH","鹏华消费领先混合","混合型","PENGHUAXIAOFEILINGXIANHUNHE"],["160625","PHZQBXFJ","鹏华证券保险分级","股票指数","PENGHUAZHENGQUANBAOXIANFENJI"],["160626","PHXXFJ","鹏华信息分级","股票指数","PENGHUAXINXIFENJI"],["160627","PHCLYXHH","鹏华策略优选混合","混合型","PENGHUACELUEYOUXUANHUNHE"],["160628","PHDCFJ","鹏华地产分级","股票指数","PENGHUADICHANFENJI"],["160629","PHCMFJ","鹏华传媒分级","股票指数","PENGHUACHUANMEIFENJI"],["160630","PHGF","鹏华国防","股票指数","PENGHUAGUOFANG"],["160631","PHYHFJ","鹏华银行分级","股票指数","PENGHUAYINHANGFENJI"],["160632","PHJFJ","鹏华酒分级","股票指数","PENGHUAJIUFENJI"],["160633","PHZQFJ","鹏华证券分级","股票指数","PENGHUAZHENGQUANFENJI"],["160634","PHHBFJ","鹏华环保分级","股票指数","PENGHUAHUANBAOFENJI"],["160635","PHZZYYWSLOF","鹏华中证医药卫生(LOF)","股票指数","PENGHUAZHONGZHENGYIYAOWEISHENGLOF"],["160636","PHHLWFJ","鹏华互联网分级","股票指数","PENGHUAHULIANWANGFENJI"],["160637","PHCYBFJ","鹏华创业板分级","股票指数","PENGHUACHUANGYEBANFENJI"],["160638","PHYDYLFJ","鹏华一带一路分级","股票指数","PENGHUAYIDAIYILUFENJI"],["160639","PHGTFJ","鹏华高铁分级","股票指数","PENGHUAGAOTIEFENJI"],["160640","PHXNYFJ","鹏华新能源分级","股票指数","PENGHUAXINNENGYUANFENJI"],["160642","PHZRHH","鹏华增瑞混合","混合型","PENGHUAZENGRUIHUNHE"],["160706","JSHS300ETFLJ","嘉实沪深300ETF联接","联接基金","JIASHIHUSHEN300ETFLIANJIE"],["160716","JSJBM50","嘉实基本面50","股票指数","JIASHIJIBENMIAN50"],["160717","JSHSZGQY","嘉实恒生中国企业","QDII-指数","JIASHIHENGSHENGZHONGGUOQIYE"],["160718","JSDLFJZQ","嘉实多利分级债券","债券型","JIASHIDUOLIFENJIZHAIQUAN"],["160719","JSHJ","嘉实黄金","QDII","JIASHIHUANGJIN"],["160720","JSZZZQQYZZSA","嘉实中证中期企业债指数A","债券指数","JIASHIZHONGZHENGZHONGJIQIYEZHAIZHISHUA"],["160721","JSZZZQQYZZSC","嘉实中证中期企业债指数C","债券指数","JIASHIZHONGZHENGZHONGJIQIYEZHAIZHISHUC"],["160722","JSHZDZHH","嘉实惠泽定增混合","混合型","JIASHIHUIZEDINGZENGHUNHE"],["160723","JSYYQDIILOF","嘉实原油(QDII-LOF)","QDII","JIASHIYUANYOUQDIILOF"],["160805","CSTZYS","长盛同智优势","混合型","CHANGSHENGTONGZHIYOUSHI"],["160806","CSTQZZ800LOF","长盛同庆中证800(LOF)","股票指数","CHANGSHENGTONGQINGZHONGZHENG800(LOF)"],["160807","CSHS300","长盛沪深300","股票指数","CHANGSHENGHUSHEN300"],["160808","CSTR200FJ","长盛同瑞200分级","股票指数","CHANGSHENGTONGRUI200FENJI"],["160809","CSTH100DQFJ","长盛同辉100等权分级","股票指数","CHANGSHENGTONGHUI100DENGQUANFENJI"],["160810","CSTFZQLOF","长盛同丰债券(LOF)","债券型","CHANGSHENGTONGFENGZHAIQUANLOF"],["160812","CSTYCZHB","长盛同益成长回报","混合型","CHANGSHENGTONGYICHENGZHANGHUIBAO"],["160813","CSTSCZYX","长盛同盛成长优选","混合型","CHANGSHENGTONGCHENGCHENGZHANGYOUXUAN"],["160814","CSZZJRDCZSFJ","长盛中证金融地产指数分级","股票指数","CHANGSHENGZHONGZHENGJINRONGDICHANZHISHUFENJI"],["160910","DCCXCZHH","大成创新成长混合","混合型","DACHENGCHUANGXINCHENGZHANGHUNHE"],["160915","DCJFZQLOF","大成景丰债券(LOF)","债券型","DACHENGJINGFENGZHAIQUANLOF"],["160916","DCYXHHLOF","大成优选混合(LOF)","混合型","DACHENGYOUXUANHUNHELOF"],["160918","DCZXPHHLOF","大成中小盘混合(LOF)","混合型","DACHENGZHONGXIAOPANHUNHELOF"],["160919","DCCYSJGP","大成产业升级股票","股票型","DACHENGCHANYESHENGJIGUPIAO"],["160921","DCDZLHPZHH","大成定增灵活配置混合","混合型","DACHENGDINGZENGLINGHUOPEIZHIHUNHE"],["160922","DCHSZHZXXGZS","大成恒生综合中小型股指数","QDII-指数","DACHENGHENGSHENGZONGHEZHONGXIAOXINGGUZHISHU"],["160923","DCHWZGJHHH","大成海外中国机会混合","QDII","DACHENGHAIWAIZHONGGUOJIHUIHUNHE"],["161005","FGTHCZHHA","富国天惠成长混合A","混合型","FUGUOTIANHUICHENGZHANGHUNHEA"],["161006","FGTHCZHHA","富国天惠成长混合A(后端)","混合型","FUGUOTIANHUICHENGZHANGHUNHEA"],["161010","FGTFQHZQLOF","富国天丰强化债券(LOF)","债券型","FUGUOTIANFENGQIANGHUAZHAIQUANLOF"],["161014","FGHLHBFJZQ","富国汇利回报分级债券","债券型","FUGUOHUILIHUIBAOFENJIZHAIQUAN"],["161015","FGTYZQLOF","富国天盈债券(LOF)","债券型","FUGUOTIANYINGZHAIQUANLOF"],["161017","FGZZ500","富国中证500","股票指数","FUGUOZHONGZHENG500"],["161018","FGTFQHZQLOF","富国天丰强化债券(LOF)(后端)","债券型","FUGUOTIANFENGQIANGHUAZHAIQUANLOF"],["161019","FGXTFDQKFZQ","富国新天锋定期开放债券","定开债券","FUGUOXINTIANFENGDINGQIKAIFANGZHAIQUAN"],["161020","FGXTFDQKFZQ","富国新天锋定期开放债券(后端)","定开债券","FUGUOXINTIANFENGDINGQIKAIFANGZHAIQUAN"],["161021","FGZZ500","富国中证500(后端)","股票指数","FUGUOZHONGZHENG500"],["161022","FGCYBZSFJ","富国创业板指数分级","股票指数","FUGUOCHUANGYEBANZHISHUFENJI"],["161024","FGZZJGZSFJ","富国中证军工指数分级","股票指数","FUGUOZHONGZHENGJUNGONGZHISHUFENJI"],["161025","FGZZYDHLWZSFJ","富国中证移动互联网指数分级","股票指数","FUGUOZHONGZHENGYIDONGHULIANWANGZHISHUFENJI"],["161026","FGZZGQGGZSFJ","富国中证国企改革指数分级","股票指数","FUGUOZHONGZHENGGUOQIGAIGEZHISHUFENJI"],["161027","FGZZQZZQGSZSFJ","富国中证全指证券公司指数分级","股票指数","FUGUOZHONGZHENGQUANZHIZHENGQUANGONGSIZHISHUFENJI"],["161028","FGZZXNYQCZSFJ","富国中证新能源汽车指数分级","股票指数","FUGUOZHONGZHENGXINNENGYUANQICHEZHISHUFENJI"],["161029","FGZZYHZSFJ","富国中证银行指数分级","股票指数","FUGUOZHONGZHENGYINHANGZHISHUFENJI"],["161030","FGZZTYCYZSFJ","富国中证体育产业指数分级","股票指数","FUGUOZHONGZHENGTIYUCHANYEZHISHUFENJI"],["161031","FGZZGY40ZSFJ","富国中证工业4.0指数分级","股票指数","FUGUOZHONGZHENGGONGYE40ZHISHUFENJI"],["161032","FGZZMTZSFJ","富国中证煤炭指数分级","股票指数","FUGUOZHONGZHENGMEITANZHISHUFENJI"],["161033","FGZZZNQCLOF","富国中证智能汽车(LOF)","股票指数","FUGUOZHONGZHENGZHINENGQICHE(LOF)"],["161035","FGZZYYZTZSZQ","富国中证医药主题指数增强","股票指数","FUGUOZHONGZHENGYIYAOZHUTIZHISHUZENGQIANG"],["161036","FGZZYLZTZSZQX","富国中证娱乐主题指数增强型","股票指数","FUGUOZHONGZHENGYULEZHUTIZHISHUZENGQIANGXING"],["161037","FGZZGDZZZSZQX","富国中证高端制造指数增强型","股票指数","FUGUOZHONGZHENGGAODUANZHIZAOZHISHUZENGQIANGXING"],["161115","YFDSFTLZQLOF","易方达岁丰添利债券(LOF)","债券型","YIFANGDASUIFENGTIANLIZHAIQUANLOF"],["161116","YFDHJZT","易方达黄金主题","QDII","YIFANGDAHUANGJINZHUTI"],["161117","YFDYXTLZQ","易方达永旭添利债券","定开债券","YIFANGDAYONGXUTIANLIZHAIQUAN"],["161118","YFDZXBZSFJ","易方达中小指数分级","股票指数","YIFANGDAZHONGXIAOZHISHUFENJI"],["161119","YFDXZHZQA","易方达新综合债券A","债券指数","YIFANGDAXINZENGHEZHAIQUANA"],["161120","YFDXZHZQC","易方达新综合债券C","债券指数","YIFANGDAXINZENGHEZHAIQUANC"],["161121","YFDYHFJ","易方达银行分级","股票指数","YIFANGDAYINHANGFENJI"],["161122","YFDSWFJ","易方达生物分级","股票指数","YIFANGDASHENGWUFENJI"],["161123","YFDCZFJ","易方达重组分级","股票指数","YIFANGDACHONGZUFENJI"],["161124","YFDXGHSZHXXGZS","易方达香港恒生综合小型股指数","QDII-指数","YIFANGDAXIANGGANGHENGSHENGZONGHEXIAOXINGGUZHISHU"],["161125","YFDBP500ZSRMB","易方达标普500指数人民币","QDII-指数","YIFANGDABIAOPU500ZHISHURENMINBI"],["161126","YFDBPYLBJRMB","易方达标普医疗保健人民币","QDII-指数","YIFANGDABIAOPUYILIAOBAOJIANRENMINBI"],["161127","YBPSWKJRMB","易标普生物科技人民币","QDII-指数","YIBIAOPUSHENGWUKEJIRENMINBI"],["161128","YBPXXKJRMB","易标普信息科技人民币","QDII-指数","YIBIAOPUXINXIKEJIRENMINBI"],["161129","YFDYYALRMB","易方达原油A类人民币","QDII","YIFANGDAYUANYOUALEIRENMINBI"],["161207","GTRYHS300","国投瑞银沪深300","股票指数","GUOTOURUIYINHUSHEN300"],["161210","GTRYXXSC","国投瑞银新兴市场","QDII","GUOTOURUIYINXINXINGSHICHANG"],["161211","GTHS300JRDCLJ","国投沪深300金融地产联接","联接基金","GUOTOUHUSHEN300JINRONGDECHANLIANJIE"],["161213","GTRYXFFWZS","国投瑞银消费服务指数","股票指数","GUOTOURUIYINXIAOFEIFUWUZHISHU"],["161215","GTRYXFFWZS","国投瑞银消费服务指数(后端)","股票指数","GUOTOURUIYINXIAOFEIFUWUZHISHU"],["161216","GTRYSZZQLOFA","国投瑞银双债债券(LOF)A","债券型","GUOTOURUIYINSHUANGZHAIZHAIQUANLOFA"],["161217","GTRYZZZS","国投瑞银中证指数","股票指数","GUOTOURUIYINZHONGZHENGZHISHU"],["161218","GTRYZZZS","国投瑞银中证指数(后端)","股票指数","GUOTOURUIYINZHONGZHENGZHISHU"],["161219","GTRYXXCY","国投瑞银新兴产业","混合型","GUOTOURUIYINXINXINGCHANYE"],["161220","GTRYXXCY","国投瑞银新兴产业(后端)","混合型","GUOTOURUIYINXINXINGCHANYE"],["161221","GTRYSZZQC","国投瑞银双债债券C","债券型","GUOTOURUIYINSHUANGZHAIZHAIQUANC"],["161222","GTRYRLHHLOF","国投瑞银瑞利混合(LOF)","混合型","GUOTOURUIYINRUILIHUNHELOF"],["161223","GTRYZZCYZSFJ","国投瑞银中证创业指数分级","股票指数","GUOTOURUIYINZHONGZHENGCHUANGYEZHISHUFENJI"],["161224","GTRYXSLHHLOF","国投瑞银新丝路混合(LOF)","混合型","GUOTOURUIYINXINSILUHUNHELOF"],["161225","GTRYRYHHLOF","国投瑞银瑞盈混合(LOF)","混合型","GUOTOURUIYINRUIYINGHUNHELOF"],["161226","GTRYBYQHLOF","国投瑞银白银期货(LOF)","混合型","GUOTOURUIYINBAIYINQIHUOLOF"],["161227","GTRYSZ100ZS","国投瑞银深证100指数","股票指数","GUOTOURUIYINSHENZHENG100ZHISHU"],["161228","GTRYSZ100ZS","国投瑞银深证100指数(后端)","股票指数","GUOTOURUIYINSHENZHENG100ZHISHU"],["161229","GTRYZGJZFXGP","国投瑞银中国价值发现股票","QDII","GUOTOURUIYINZHONGGUOJIAZHIFAXIANGUPIAO"],["161230","GTRYSZFLDKZA","国投瑞银双债丰利定开债A","定开债券","GUOTOURUIYINSHUANGZHAIFENGLIDINGKAIZHAIA"],["161231","GTRYSZFLDKZC","国投瑞银双债丰利定开债C","定开债券","GUOTOURUIYINSHUANGZHAIFENGLIDINGKAIZHAIC"],["161232","GTRYRSHH","国投瑞银瑞盛混合","混合型","GUOTOURUIYINRUISHENGHUNHE"],["161233","GTRYRTDZHH","国投瑞银瑞泰定增混合","混合型","GUOTOURUIYINRUITAIDINGZENGHUNHE"],["161505","YHTLZQLOFA","银河通利债券(LOF)A","债券型","YINHETONGLIZHAIQUANLOFA"],["161506","YHTLZQLOFC","银河通利债券(LOF)C","债券型","YINHETONGLIZHAIQUANLOFC"],["161507","YHHS300CZFJ","银河沪深300成长分级","股票指数","YINHEHUSHEN300CHENGZHANGFENJI"],["161601","RTXLC","融通新蓝筹","混合型","RONGTONGXINLANCHOU"],["161602","RTXLC","融通新蓝筹(后端)","混合型","RONGTONGXINLANCHOU"],["161603","RTZQAB","融通债券A/B","债券型","RONGTONGZHAIQUANAB"],["161604","RTSZ100","融通深证100","股票指数","RONGTONGSHENZHENG100"],["161605","RTLCCZ","融通蓝筹成长","混合型","RONGTONGLANCHOUCHENGZHANG"],["161606","RTHYJQ","融通行业景气","混合型","RONGTONGHANGYEJINGQI"],["161607","RTJC100","融通巨潮100","股票指数","RONGTONGJUCHAO100"],["161608","RTYZFHBA","融通易支付货币A","货币型","RONGTONGYIZHIFUHUOBIA"],["161609","RTDLXFHH","融通动力先锋混合","混合型","RONGTONGDONGLIXIANFENGHUNHE"],["161610","RTLXCZHHLOF","融通领先成长混合(LOF)","混合型","RONGTONGLINGXIANCHENGZHANGHUNHELOF"],["161611","RTNXQDHH","融通内需驱动混合","混合型","RONGTONGNEIXUQUDONGHUNHE"],["161612","RTSZCFZS","融通深证成份指数","股票指数","RONGTONGSHENZHENGCHENGFENZHISHU"],["161613","RTCYBZSZQ","融通创业板指数增强","股票指数","RONGTONGCHUANGYEBANZHISHUZENGQIANG"],["161614","RTSJTLZQLOF","融通四季添利债券(LOF)","债券型","RONGTONGSIJITIANLIZHAIQUANLOF"],["161615","RTYZFHBB","融通易支付货币B","货币型","RONGTONGYIZHIFUHUOBIB"],["161616","RTYLBJHYHH","融通医疗保健行业混合","混合型","RONGTONGYILIAOBAOJIANHANGYEHUNHE"],["161617","RTYLBJHYHH","融通医疗保健行业混合(后端)","混合型","RONGTONGYILIAOBAOJIANHANGYEHUNHE"],["161618","RTSSTLZQA","融通岁岁添利债券A","定开债券","RONGTONGSUISUITIANLIZHAIQUANA"],["161619","RTSSTLZQB","融通岁岁添利债券B","定开债券","RONGTONGSUISUITIANLIZHAIQUANB"],["161620","RTFLSFF","融通丰利四分法","QDII","RONGTONGFENGLISIFENFA"],["161621","RTFLSFF","融通丰利四分法(后端)","QDII","RONGTONGFENGLISIFENFA"],["161622","RTHCBHBA","融通汇财宝货币A","货币型","RONGTONGHUICAIBAOHUOBIA"],["161623","RTHCBHBB","融通汇财宝货币B","货币型","RONGTONGHUICAIBAOHUOBIB"],["161624","RTKZZZQA","融通可转债债券A","债券型","RONGTONGKEZHUANZHAIZHAIQUANA"],["161625","RTKZZZQC","融通可转债债券C","债券型","RONGTONGKEZHUANZHAIZHAIQUANC"],["161626","RTTFZQLOFA","融通通福债券(LOF)A","债券型","RONGTONGTONGFUZHAIQUANLOFA"],["161627","RTTFZQLOFC","融通通福债券(LOF)C","债券型","RONGTONGTONGFUZHAIQUANLOFC"],["161628","RTJGFJ","融通军工分级","股票指数","RONGTONGJUNGONGFENJI"],["161629","RTZQFJ","融通证券分级","股票指数","RONGTONGZHENGQUANFENJI"],["161630","RTZZDNYLOF","融通中证大农业(LOF)","股票指数","RONGTONGZHONGZHENGDANONGYELOF"],["161631","RTRGZNZSLOF","融通人工智能指数(LOF)","股票指数","RONGTONGRENGONGZHINENGZHISHULOF"],["161653","RTZQAB","融通债券A/B(后端)","债券型","RONGTONGZHAIQUANAB"],["161654","RTSZ100","融通深证100(后端)","股票指数","RONGTONGSHENZHENG100"],["161655","RTLCCZ","融通蓝筹成长(后端)","混合型","RONGTONGLANCHOUCHENGZHANG"],["161656","RTHYJQ","融通行业景气(后端)","混合型","RONGTONGHANGYEJINGQI"],["161657","RTJC100","融通巨潮100(后端)","股票指数","RONGTONGJUCHAO100"],["161659","RTDLXFHH","融通动力先锋混合(后端)","混合型","RONGTONGDONGLIXIANFENGHUNHE"],["161660","RTLXCZHHLOF","融通领先成长混合(LOF)(后端)","混合型","RONGTONGLINGXIANCHENGZHANGHUNHELOF"],["161661","RTNXQDHH","融通内需驱动混合(后端)","混合型","RONGTONGNEIXUQUDONGHUNHE"],["161662","RTSZCFZS","融通深证成份指数(后端)","股票指数","RONGTONGSHENZHENGCHENGFENZHISHU"],["161663","RTCYBZSZQ","融通创业板指数增强(后端)","股票指数","RONGTONGCHUANGYEBANZHISHUZENGQIANG"],["161693","RTZQC","融通债券C","债券型","RONGTONGZHAIQUANC"],["161706","ZSYZCZHHLOF","招商优质成长混合(LOF)","混合型","ZHAOSHANGYOUZHICHENGZHANGHUNHELOF"],["161707","ZSYZCZHHLOF","招商优质成长混合(LOF)(后端)","混合型","ZHAOSHANGYOUZHICHENGZHANGHUNHELOF"],["161713","ZSXYTLZQLOF","招商信用添利债券(LOF)","债券型","ZHAOSHANGXINYONGTIANLIZHAIQUANLOF"],["161714","ZSBPJZSG","招商标普金砖四国","QDII-指数","QIAOSHANGBIAOPUJINZHUANSIGUO"],["161715","ZSZZDZSPZSFJ","招商中证大宗商品指数分级","股票指数","ZHAOSHANGZHONGZHENGDAZONGSHANGPINZHISHUFENJI"],["161716","ZSSZZQZQLOF","招商双债增强债券(LOF)","债券型","ZHAOSHANGSHUANGZHAIZENGQIANGZHAIQUANLOF"],["161718","ZSHS300GBTZSFJ","招商沪深300高贝塔指数分级","股票指数","ZHAOSHANGHUSHEN300GAOBEITAZHISHUFENJI"],["161719","ZSKZZFJZQ","招商可转债分级债券","债券型","ZHAOSHANGKEZHUANZHAIFENJIZHAIQUAN"],["161720","ZSZZQZZQGSZSFJ","招商中证全指证券公司指数分级","股票指数","ZHAOSHANGZHONGZHENGQUANZHIZHENGQUANGONGSIZHISHUFENJI"],["161721","ZSHS300DCZSFJ","招商沪深300地产指数分级","股票指数","QIAOSHANGHUSHEN300DECHANZHISHUFENJI"],["161722","ZSFTHHLOF","招商丰泰混合(LOF)","混合型","QIAOSHANGFENGTAIHUNHE(LOF)"],["161723","ZSZZYHZSFJ","招商中证银行指数分级","股票指数","ZHAOSHANGZHONGZHENGYINHANGZHISHUFENJI"],["161724","ZSZZMTDQZSFJ","招商中证煤炭等权指数分级","股票指数","ZHAOSHANGZHONGZHENGMEITANDENGQUANZHISHUFENJI"],["161725","ZSZZBJZSFJ","招商中证白酒指数分级","股票指数","ZHAOSHANGZHONGZHENGBAIJIUZHISHUFENJI"],["161726","ZSGZSWYYZSFJ","招商国证生物医药指数分级","股票指数","ZHAOSHANGGUOZHENGSHENGWUYIYAOZHISHUFENJI"],["161727","ZSZRHH","招商增荣混合","混合型","ZHAOSHANGZENGRONGHUNHE"],["161810","YHNXJXHHLOF","银华内需精选混合(LOF)","混合型","YINHUANEIXUJINGXUANHUNHELOF"],["161811","YHHS300ZSFJ","银华沪深300指数分级","股票指数","YINHUAHUSHEN300ZHISHUFENJI"],["161812","YHSZ100FJ","银华深证100分级","股票指数","YINHUASHENZHENG100FENJI"],["161813","YHXYZQLOF","银华信用债券(LOF)","债券型","YINHUAXINYONGZHAIQUANLOF"],["161815","YHKTZZT","银华抗通胀主题","QDII","YINHUAKANGTONGZHANGZHUTI"],["161816","YHZZDQ90FJ","银华中证等权90分级","股票指数","YINHUAZHONGZHENGDENGQUAN90FENJI"],["161818","YHXFFJHH","银华消费分级混合","混合型","YINHUAXIAOFEIFENJIHUNHE"],["161819","YHZYZSFJ","银华资源指数分级","股票指数","YINHUAZIYUANZHISHUFENJI"],["161820","YHCZXYZQ","银华纯债信用债券","债券型","YINHUACHUNZHAIXINYONGZHAIQUAN"],["161821","YHZZZP50ZSZQA","银华中证中票50指数债券A","债券指数","YINHUAZHONGZHENGZHONGPIAO50ZHISHUZHAIQUANA"],["161822","YHZZZP50ZSZQC","银华中证中票50指数债券C","债券指数","YINHUAZHONGZHENGZHONGPIAO50ZHISHUZHAIQUANC"],["161823","YHYXCZZQLOFA","银华永兴纯债债券(LOF)A","债券型","YINHUAYONGXINGCHUNZHAIZHAIQUANLOFA"],["161824","YHYXCZZQLOFC","银华永兴纯债债券(LOF)C","债券型","YINHUAYONGXINGCHUNZHAIZHAIQUANLOFC"],["161825","YHZZ800FJ","银华中证800分级","股票指数","YINHUAZHONGZHENG800FENJI"],["161826","YHZZZZZSZQFJ","银华中证转债指数增强分级","债券指数","YINHUAZHONGZHENGZHUANZHAIZHISHUZENGQIANGFENJI"],["161827","YHYYFJZQ","银华永益分级债券","债券型","YINHUAYONGYIFENJIZHAIQUAN"],["161828","YHYYFJZQA","银华永益分级债券A","固定收益","YINHUAYONGYIFENJIZHAIQUANA"],["161831","YHHSGQZSFJ","银华恒生国企指数分级","QDII-指数","YINHUAHENGSHENGGUOQIZHISHUFENJI"],["161834","YHXRDZLHPZHH","银华鑫锐定增灵活配置混合","混合型","YINHUAXINRUIDINGZENGLINGHUOPEIZHIHUNHE"],["161835","YHHFDKHH","银华惠丰定开混合","混合型","YINHUAHUIFENGDINGKAIHUNHE"],["161902","WJZQSYZQ","万家增强收益债券","债券型","WANJIAZENGQIANGSHOUYIZHAIQUAN"],["161903","WJHYYXHHLOF","万家行业优选混合(LOF)","混合型","WANJIAHANGYEYOUXUANHUNHELOF"],["161907","WJZZHLZS","万家中证红利指数","股票指数","WANJIAZHONGZHENGGONGLIZHISHU"],["161908","WJTLZQLOF","万家添利债券(LOF)","债券型","WANJIATIANLIZHAIQUANLOF"],["161910","WJZCZSFJ","万家中创指数分级","股票指数","WANJIAZHONGCHUANGZHISHUFENJI"],["161911","WJQHSYDQKFZQ","万家强化收益定期开放债券","定开债券","WANJIAQIANGHUASHOUYIDINGKAIZHAI"],["162006","CCJFHHLOF","长城久富混合(LOF)","混合型","CHANGCHENGJIUFUHUNHELOF"],["162010","CCJZZXB300","长城久兆中小板300","股票指数","CHANGCHENGJIUZHAOZHONGXIAOBAN300"],["162102","JYZXPJX","金鹰中小盘精选","混合型","JINYINGZHONGXIAOPANJINGXUAN"],["162105","JYCJZLZQLOFC","金鹰持久增利债券(LOF)C","债券型","JINYINGCHIJIUZENGLIZHAIQUANLOFC"],["162107","JYLHJXGPLOF","金鹰量化精选股票(LOF)","股票型","JINYINGLIANGHUAJINGXUANGUPIAOLOF"],["162108","JYYSZQXFQSC","金鹰元盛债券型发起式C","债券型","JINYINGYUANSHENGZHAIQUANXINGFAQISHIC"],["162201","TDHLCZHH","泰达宏利成长混合","混合型","TAIDAHONGLICHENGZHANGHUNHE"],["162202","TDHLZQHH","泰达宏利周期混合","混合型","TAIDAHONGLIZHOUQIHUNHE"],["162203","TDHLWDHH","泰达宏利稳定混合","混合型","TAIDAHONGLIWENDINGHUNHE"],["162204","TDHLHYHH","泰达宏利行业混合","混合型","TAIDAHONGLIHANGYEHUNHE"],["162205","TDHLFXYSHH","泰达宏利风险预算混合","混合型","TAIDAHONGLIFENGXIANYUSUANHUNHE"],["162206","TDHLHBA","泰达宏利货币A","货币型","TAIDAHONGLIHUOBIA"],["162207","TDHLXLYXHH","泰达宏利效率优选混合","混合型","TAIDAHONGLIXIAOLVYOUXUANHUNHE"],["162208","TDHLSXQYGP","泰达宏利首选企业股票","股票型","TAIDAHONGLISHOUXUANQIYEGUPIAO"],["162209","TDHLSZYXHH","泰达宏利市值优选混合","混合型","TAIDAHONGLISHIZHIYOUXUANHUNHE"],["162210","TDHLJLZQA","泰达宏利集利债券A","债券型","TAIDAHONGLIJILIZHAIQUANA"],["162211","TDHLPZSHHH","泰达宏利品质生活混合","混合型","TAIDAHONGLIPINZHISHENGHUOHUNHE"],["162212","TDHLHLXFHH","泰达宏利红利先锋混合","混合型","TAIDAHONGLIHONGLIXIANFENGHUNHE"],["162213","TDHLCFDPZSA","泰达宏利财富大盘指数A","股票指数","TAIDAHONGLICAIFUDAPANZHISHUA"],["162214","TDHLLXZXPHH","泰达宏利领先中小盘混合","混合型","TAIDAHONGLILINGXIANZHONGXIAOPANHUNHE"],["162215","TDHLJLZQLOF","泰达宏利聚利债券(LOF)","债券型","TAIDAHONGLIJULIZHAIQUANLOF"],["162216","TDZZ500FJ","泰达中证500分级","股票指数","TAIDAZHONGZHENG500FENJI"],["162299","TDHLJLZQC","泰达宏利集利债券C","债券型","TAIDAHONGLIJILIZHAIQUANC"],["162307","HFTZZ100","海富通中证100","股票指数","HAIFUTONGZHONGZHENG100"],["162308","HFTWJZLZQLOF","海富通稳进增利债券(LOF)","债券型","HAIFUTONGWENJINZENGLIZHAIQUANLOF"],["162411","HBBPSYZS","华宝标普石油指数","QDII-指数","HUABAOBIAOPUDANYOUZHISHU"],["162412","HBXYZZYLZSFJ","华宝兴业中证医疗指数分级","股票指数","HUABAOXINGYEZHONGZHENGYILIAOZHISHUFENJI"],["162413","HBXYZZ1000ZSFJ","华宝兴业中证1000指数分级","股票指数","HUABAOXINGYEZHONGZHENG1000ZHISHUFENJI"],["162414","HBXJYHHLOFA","华宝新机遇混合(LOF)A","混合型","HUABAOXINJIYUHUNHELOFA"],["162415","HBBPMGXFRMB","华宝标普美国消费人民币","QDII-指数","HUABAOBIAOPUMEIGUOXIAOFEIRENMINBI"],["162509","GLASXZZ100","国联安双禧中证100","股票指数","GUOLIANANSHUANGXIZHONGZHENG100"],["162510","GLASLZXBZZ","国联安双力中小板综指","股票指数","GUOLIANANSHUANGLIZHONGXIAOBANZENGZHI"],["162511","GLASJXYZQLOF","国联安双佳信用债券(LOF)","债券型","GUOLIANANSHUANGJIAXINYONGZHAIQUANLOF"],["162605","JSCCDYHHLOF","景顺长城鼎益混合(LOF)","混合型","JINGSHUNCHANGCHENGDINGYIHUNHELOF"],["162606","JSCCDYHHLOF","景顺长城鼎益混合(LOF)(后端)","混合型","JINGSHUNCHANGCHENGDINGYIHUNHELOF"],["162607","JSCCZYLDHH","景顺长城资源垄断混合","混合型","JINGSHUNCHANGCHENGZIYUANLONGDUANHUNHE"],["162703","GFXPCZHHLOF","广发小盘成长混合(LOF)","混合型","GUANGFAXIAOPANCHENGZHANGHUNHELOF"],["162711","GFZZ500ETFLJA","广发中证500ETF联接A","联接基金","GUANGFAZHONGZHENG500ETFLIANJIEA"],["162712","GFJLZQLOF","广发聚利债券(LOF)","债券型","GUANGFAJULIZHAIQUANLOF"],["162713","GFZZ500ETFLJA","广发中证500ETF联接A(后端)","联接基金","GUANGFAZHONGZHENG500ETFLIANJIEA"],["162714","GFSZ100ZSFJ","广发深证100指数分级","股票指数","GUANGFASHENZHENG100ZHISHUFENJI"],["162715","GFJYZQLOFA","广发聚源债券(LOF)A","债券型","GUANGFAJUYUANZHAIQUANLOFA"],["162716","GFJYZQLOFC","广发聚源债券(LOF)C","债券型","GUANGFAJUYUANZHAIQUANLOFC"],["162717","GFRJDZHH","广发睿吉定增混合","混合型","GUANGFARUIJIDINGZENGHUNHE"],["162718","GFXRHH","广发鑫瑞混合","混合型","GUANGFAXINRUIHUNHE"],["162719","GFDQSSYZSA","广发道琼斯石油指数A","QDII-指数","GUANGFADAOQIONGSISHIYOUZHISHUA"],["162907","TXJBM400ZSFJ","泰信基本面400指数分级","股票指数","TAIXINJIBENMIAN400ZHISHUFENJI"],["163001","CXYLBJHHLOF","长信医疗保健混合(LOF)","混合型","CHANGXINYILIAOBAOJIANHUNHELOF"],["163003","CXLXZQLOFC","长信利鑫债券(LOF)C","债券型","CHANGXINLIXINZHAIQUANLOFC"],["163005","CXLZZQLOFC","长信利众债券(LOF)C","债券型","CHANGXINLIZHONGZHAIQUANLOFC"],["163007","CXLZZQLOFA","长信利众债券(LOF)A","债券型","CHANGXINLIZHONGZHAIQUANLOFA"],["163008","CXLXZQLOFA","长信利鑫债券(LOF)A","债券型","CHANGXINLIXINZHAIQUANLOFA"],["163109","SWLXSZCZFJ","申万菱信深证成指分级","股票指数","SHENWANLINGXINSHENZHENGCHENGZHIFENJI"],["163110","SWLHXP","申万量化小盘","股票型","SHENWANLIANGHUAXIAOPAN"],["163111","SWZXB","申万中小板","股票指数","SHENWANZHONGXIAOBAN"],["163113","SWLXSWZQFJ","申万菱信申万证券分级","股票指数","SHENWANLINGXINSHENWANZHENGQUANFENJI"],["163114","SWZZHBCYZSFJ","申万中证环保产业指数分级","股票指数","SHENWANZHONGZHENGHUANBAOCHANYEZHISHUFENJI"],["163115","SWLXZZJGZSFJ","申万菱信中证军工指数分级","股票指数","SHENWANLINGXINZHONGZHENGJUNGONGZHISHUFENJI"],["163116","SWLXSWDZFJ","申万菱信申万电子分级","股票指数","SHENWANLINGXINSHENWANDIANZIFENJI"],["163117","SWLXSWCMFJ","申万菱信申万传媒分级","股票指数","SHENWANLINGXINSHENWANCHUANMEIFENJI"],["163118","SWLXSWYYSWFJ","申万菱信申万医药生物分级","股票指数","SHENWANLINGXINSHENWANYIYAOSHENGWUFENJI"],["163119","SWZZSWXXJKCYZS","申万中证申万新兴健康产业指数","股票指数","SHENWANZHONGZHENGSHENWANXINXINGJIANKANGCHANYEZHISHU"],["163208","NAYQNY","诺安油气能源","QDII","NUOANYOUQINENGYUAN"],["163209","NAZZCYCZZSFJ","诺安中证创业成长指数分级","股票指数","NUOANZHONGZHENGCHUANGYECHENGZHANGZHISHUFENJI"],["163210","NACZDQKFZQA","诺安纯债定期开放债券A","定开债券","NUOANCHUNZHAIDINGQIKAIFANGZHAIQUANA"],["163211","NACZDQKFZQC","诺安纯债定期开放债券C","定开债券","NUOANCHUNZHAIDINGQIKAIFANGZHAIQUANC"],["163302","DMZYYXHHLOF","大摩资源优选混合(LOF)","混合型","DAMOZIYUANYOUXUANHUNHELOF"],["163402","XQQSTZHHLOF","兴全趋势投资混合(LOF)","混合型","XINGQUANQUSHITOUZIHUNHELOF"],["163403","XQQSTZHHLOF","兴全趋势投资混合(LOF)(后端)","混合型","XINGQUANQUSHITOUZIHUNHELOF"],["163406","XQHRFJHH","兴全合润分级混合","混合型","XINGQUANHERUNFENJIHUNHE"],["163407","XQHS300ZSLOF","兴全沪深300指数(LOF)","股票指数","XINGQUANHUSHEN300ZHISHULOF"],["163408","XQHS300ZSLOF","兴全沪深300指数(LOF)(后端)","股票指数","XINGQUANHUSHEN300ZHISHULOF"],["163409","XQLSTZHHLOF","兴全绿色投资混合(LOF)","混合型","XINGQUANLVSETOUZIHUNHELOF"],["163410","XQLSTZHHLOF","兴全绿色投资混合(LOF)(后端)","混合型","XINGQUANLVSETOUZIHUNHELOF"],["163411","XQBB","兴全保本","保本型","XINGQUANBAOBEN"],["163412","XQQZCHHLOF","兴全轻资产混合(LOF)","混合型","XINGQUANQINGZICHANHUNHELOF"],["163413","XQQZCHHLOF","兴全轻资产混合(LOF)(后端)","混合型","XINGQUANQINGZICHANHUNHELOF"],["163415","XQSYMSYXHH","兴全商业模式优选混合","混合型","XINGQUANSHANGYEMOSHIYOUXUANHUNHE"],["163416","XQSYMSYXHH","兴全商业模式优选混合(后端)","混合型","XINGQUANSHANGYEMOSHIYOUXUANHUNHE"],["163503","TZHXCZHHLOF","天治核心成长混合(LOF)","混合型","TIANZHIHEXINCHENGZHANGHUNHELOF"],["163801","ZYZGJX","中银中国精选","混合型","ZHONGYINZHONGGUOJINGXUAN"],["163802","ZYHBA","中银货币A","货币型","ZHONGYINHUOBIA"],["163803","ZYCXZZHHA","中银持续增长混合A","混合型","ZHONGYINCHIXUZENGZHANGHUNHEA"],["163804","ZYSYHHA","中银收益混合A","混合型","ZHONGYINSHOUYIHUNHEA"],["163805","ZYCLHH","中银策略混合","混合型","ZHONGYINCELUEHUNHE"],["163806","ZYWJZLZQ","中银稳健增利债券","债券型","ZHONGYINWENJIANZENGLIZHAIQUAN"],["163807","ZYHYYX","中银行业优选","混合型","ZHONGYINHANGYEYOUXUAN"],["163808","ZYZZ100","中银中证100","股票指数","ZHONGYINZHONGZHENG100"],["163809","ZYLCJX","中银蓝筹精选","混合型","ZHONGYINLANCHOUJINGXUAN"],["163810","ZYJZJX","中银价值精选","混合型","ZHONGYINJIAZHIJINGXUAN"],["163811","ZYWJSLZQA","中银稳健双利债券A","债券型","ZHONGYINWENJIANSHUANGLIZHAIQUANA"],["163812","ZYWJSLZQB","中银稳健双利债券B","债券型","ZHONGYINWENJIANSHUANGLIZHAIQUANB"],["163813","ZYQQCL","中银全球策略","QDII","ZHONGYINQUANQIUCELUE"],["163816","ZYZZZQZQA","中银转债增强债券A","债券型","ZHONGYINZHUANZHAIZENGQIANGZHAIQUANA"],["163817","ZYZZZQZQB","中银转债增强债券B","债券型","ZHONGYINZHUANZHAIZENGQIANGZHAIQUANB"],["163818","ZYZXPCZHH","中银中小盘成长混合","混合型","ZHONGYINZHONGXIAOPANCHENGZHANGHUNHE"],["163819","ZYXYZLZQLOF","中银信用增利债券(LOF)","债券型","ZHONGYINXINYONGZENGLIZHAIQUANLOF"],["163820","ZYHBB","中银货币B","货币型","ZHONGYINHUOBIB"],["163821","ZYHS300DQZZS","中银沪深300等权重指数","股票指数","ZHONGYINHUSHEN300DENGQUANZHONGZHISHU"],["163822","ZYZTCLHH","中银主题策略混合","混合型","ZHONGYINZHUTICELUEHUNHE"],["163823","ZYBBHH","中银保本混合","保本型","ZHONGYINBAOBENHUNHE"],["163824","ZYSLDQKFZQ","中银盛利定期开放债券","定开债券","ZHONGYINSHENGLIDINGQIKAIFANGZHAIQUAN"],["163825","ZYHLFJZQ","中银互利分级债券","债券型","ZHONGYINHULIFENJIZHAIQUAN"],["163826","ZYHLFJZQA","中银互利分级债券A","固定收益","ZHONGYINHULIFENJIZHAIQUANA"],["163827","ZYCYZDQKFZQ","中银产业债定期开放债券","定开债券","ZHONGYINCHANYEZHAIDINGQIKAIFANGZHAIQUAN"],["163907","ZHHYCZFQS","中海惠裕纯债发起式","债券型","ZHONGHAIHUIYUCHUNZHAIFAQISHI"],["163909","ZHHFCZFJZQ","中海惠丰纯债分级债券","债券型","ZHONGHAIHUIFENGCHUNZHAIFENJIZHAIQUAN"],["163910","ZHHFCZFJZQA","中海惠丰纯债分级债券A","固定收益","ZHONGHAIHUIFENGCHUNZHAIFENJIZHAIQUANA"],["164105","HFQHZQ","华富强化债券","债券型","HUAFUQIANGHUAZHAIQUAN"],["164205","THXDLLHPZHH","天弘鑫动力灵活配置混合","混合型","TIANHONGXINDONGLILINGHUOPEIZHIHUNHE"],["164206","THTLZQLOF","天弘添利债券(LOF)","债券型","TIANHONGTIANLIZHAIQUANLOF"],["164208","THFLFJZQLOF","天弘丰利分级债券(LOF)","债券型","TIANHONGFENGLIFENJIZHAIQUAN(LOF)"],["164210","THTLZQLOF","天弘同利债券(LOF)","债券型","TIANHONGTONGLIZHAIQUANLOF"],["164302","XHHXZQ","新华惠鑫债券","债券型","XINHUAHUIXINZHAIQUAN"],["164304","XHZZHBCYZSFJ","新华中证环保产业指数分级","股票指数","XINHUAZHONGZHENGHUANBAOCHANYEZHISHUFENJI"],["164401","QHKYJKFJ","前海开源健康分级","股票指数","QIANHAIKAIYUANJIANKANGFENJI"],["164402","QHKYZHJG","前海开源中航军工","股票指数","QIANHAIKAIYUANZHONGHANGJUNGONG"],["164403","QHKYHGSNYHH","前海开源沪港深农业混合","混合型","QIANHAIKAIYUANHUGANGSHENNONGYEHUNHE"],["164508","GFZZ100ZSZQFJ","国富中证100指数增强分级","股票指数","GUOFUZHONGZHENG100ZHISHUZENGQIANGFENJI"],["164509","GFHLZQLOFA","国富恒利债券(LOF)A","债券型","GUOFUHENGLIZHAIQUANLOFA"],["164510","GFHLZQLOFC","国富恒利债券(LOF)C","债券型","GUOFUHENGLIZHAIQUANLOFC"],["164606","HTBRXYZLZ","华泰柏瑞信用增利债","债券型","HUATAIBAIRUIXINYONGZENGLIZHAI"],["164701","HTFHJJGJS","汇添富黄金及贵金属","QDII","HUITIANFUHUANGJINJIGUIJINSHU"],["164702","HTFJJHDQKFZQ","汇添富季季红定期开放债券","定开债券","HUITIANFUJIJIHONGDINGQIKAIFANGZHAIQUAN"],["164703","HTFCZZQLOF","汇添富纯债债券(LOF)","债券型","HUITIANFUCHUNZHAIZHAIQUANLOF"],["164705","HTFHSZSFJ","汇添富恒生指数分级","QDII-指数","HUITIANFUHENGSHENGZHISHUFENJI"],["164808","GYSJSYZQLOF","工银四季收益债券(LOF)","债券型","GONGYINSIJISHOUYIZHAIQUANLOF"],["164809","GYZZ500FJ","工银中证500分级","股票指数","GONGYINZHONGZHENG500FENJI"],["164810","GYCZDQKFZQ","工银纯债定期开放债券","定开债券","GONGYINCHUNZHAIDINGQIKAIFANGZHAIQUAN"],["164811","GYSZ100ZSFJ","工银深证100指数分级","股票指数","GONGYINSHENZHENG100ZHISHUFENJI"],["164812","GYZFZCZZQLOFA","工银政府债纯债债券(LOF)A","债券型","GONGYINZHENGFUZHAICHUNZHAIZHAIQUANLOFA"],["164814","GYSZZQZQ","工银双债增强债券","债券型","GONGYINSHUANGZHAIZENGQIANGZHAIQUAN"],["164815","GYGJYYRMB","工银国际原油人民币","QDII","GONGYINGUOJIYUANYOURENMINBI"],["164818","GYZZCMZSFJ","工银中证传媒指数分级","股票指数","GONGYINZHONGZHENGCHUANMEIZHISHUFENJI"],["164819","GYZZHBCYZSFJ","工银中证环保产业指数分级","股票指数","GONGYINZHONGZHENGHUANBAOCHANYEZHISHUFENJI"],["164820","GYZZGTCYZSFJ","工银中证高铁产业指数分级","股票指数","GONGYINZHONGZHENGGAOTIECHANYEZHISHUFENJI"],["164821","GYZZXNYZSFJ","工银中证新能源指数分级","股票指数","GONGYINZHONGZHENGXINNENGYUANZHISHUFENJI"],["164822","GYZFZCZZQLOFC","工银政府债纯债债券(LOF)C","债券型","GONGYINZHENGFUZHAICHUNZHAIZHAIQUANLOFC"],["164902","JYXYTLZQLOF","交银信用添利债券(LOF)","债券型","JIAOYINXINYONGTIANLIZHAIQUANLOF"],["164903","JYXYTLZQLOF","交银信用添利债券(LOF)(后端)","债券型","JIAOYINXINYONGTIANLIZHAIQUANLOF"],["164905","JYGZXNYZSFJ","交银国证新能源指数分级","股票指数","JIAOYINGUOZHENGXINNENGYUANZHISHUFENJI"],["164906","JYZZHWZGHLWZS","交银中证海外中国互联网指数","QDII-指数","JIAOYINZHONGZHENGHAIWAIZHONGGUOHULIANWANGZHISHU"],["164907","JYZZHLWJRZSFJ","交银中证互联网金融指数分级","股票指数","JIAOYINZHONGZHENGHULIANWANGJINRONGZHISHUFENJI"],["164908","JYZZHJZLLOF","交银中证环境治理(LOF)","股票指数","JIAOYINZHONGZHENGHUANJINGZHILILOF"],["165309","JXHS300","建信沪深300","股票指数","JIANXINHUSHEN300"],["165310","JXSLFJ","建信双利分级","股票型","JIANXINSHUANGLIFENJI"],["165311","JXXYZQZQLOFA","建信信用增强债券(LOF)A","债券型","JIANXINXINYONGZENGQIANGZHAIQUANLOFA"],["165312","JXYS50","建信央视50","股票指数","JIANXINYANGSHI50"],["165313","JXYSDLHHLOF","建信优势动力混合(LOF)","混合型","JIANXINYOUSHIDONGLIHUNHELOF"],["165314","JXXYZQZQC","建信信用增强债券C","债券型","JIANXINXINYONGZENGQIANGZHAIQUANC"],["165315","JXWJRFJ","建信网金融分级","股票指数","JIANXINWANGJINRONGFENJI"],["165317","JXFYDZLHPZHH","建信丰裕定增灵活配置混合","混合型","JIANXINFENGYUDINGZENGLINGHUOPEIZHIHUNHE"],["165508","XCSDJZHHLOF","信诚深度价值混合(LOF)","混合型","XINCHENGSHENDUJIAZHIHUNHELOF"],["165509","XCZQZQ","信诚增强债券","债券型","XINCHENGZENGQIANGZHAIQUAN"],["165510","XCJZSG","信诚金砖四国","QDII","XINCHENGJINZHUANSIGUO"],["165511","XCZZ500FJ","信诚中证500分级","股票指数","XINCHENGZHONGZHENG500FENJI"],["165512","XCXJYHHLOF","信诚新机遇混合(LOF)","混合型","XINCHENGXINJIYUHUNHELOF"],["165513","XCQQSPZT","信诚全球商品主题","QDII","XINCHENGQUANQIUSHANGPINZHUTI"],["165515","XCHS300FJ","信诚沪深300分级","股票指数","XINCHENGHUSHEN300FENJI"],["165516","XCZQLDHHLOF","信诚周期轮动混合(LOF)","混合型","XINCHENGZHOUQILUNDONGHUNHELOF"],["165517","XCSYZQLOF","信诚双盈债券(LOF)","债券型","XINCHENGSHUANGYINGZHAIQUANLOF"],["165519","XCZZ800YYZSFJ","信诚中证800医药指数分级","股票指数","XINCHENGZHONGZHENG800YIYAOZHISHUFENJI"],["165520","XCZZ800YSZSFJ","信诚中证800有色指数分级","股票指数","XINCHENGZHONGZHENG800YOUSEZHISHUFENJI"],["165521","XCZZ800JRZSFJ","信诚中证800金融指数分级","股票指数","XINCHENGZHONGZHENG800JINRONGZHISHUFENJI"],["165522","XCZZTMTCYZSFJ","信诚中证TMT产业指数分级","股票指数","XINCHENGZHONGZHENGTMTCHANYEZHISHUFENJI"],["165523","XCZZXXAQZSFJ","信诚中证信息安全指数分级","股票指数","XINCHENGZHONGZHENGXINXIANQUANZHISHUFENJI"],["165524","XCZZZNJJZSFJ","信诚中证智能家居指数分级","股票指数","XINCHENGZHONGZHENGZHINENGJIAJUZHISHUFENJI"],["165525","XCZZJJGCZSLOF","信诚中证基建工程指数LOF","股票指数","XINCHENGZHONGZHENGJIJIANGONGCHENGZHISHULOF"],["165526","XCXWHHLOFA","信诚新旺混合(LOF)A","混合型","XINCHENGXINWANGHUNHELOFA"],["165527","XCXWHHLOFC","信诚新旺混合(LOF)C","混合型","XINCHENGXINWANGHUNHELOFC"],["165528","XCDLDZ","信诚鼎利定增","混合型","XINCHENGDINGLIDINGZENG"],["165530","XCHZ","信诚惠泽","债券创新-场内","XINCHENGHUIZE"],["165705","NDSYZQLOF","诺德双翼债券(LOF)","债券型","NUODESHUANGYIZHAIQUANLOF"],["165707","NDSZ300ZSFJ","诺德深证300指数分级","股票指数","NUODESHENZHENG300ZHISHUFENJI"],["165806","DWSZ100ZQ","东吴深证100增强","股票指数","DONGWUSHENZHENG100ZENGQIANG"],["165807","DWDLZQLOF","东吴鼎利债券(LOF)","债券型","DONGWUDINGLIZHAIQUANLOF"],["165809","DWZZ","东吴转债","债券指数","DONGWUZHUANZHAI"],["166001","ZOXQSHHLOFA","中欧新趋势混合(LOF)A","混合型","ZHONGOUXINQUSHIHUNHELOFA"],["166002","ZOXLCHHA","中欧新蓝筹混合A","混合型","ZHONGOUXINLANCHOUHUNHEA"],["166003","ZOWJZQA","中欧稳健债券A","债券型","ZHONGOUWENJIANZHAIQUANA"],["166004","ZOWJZQC","中欧稳健债券C","债券型","ZHONGOUWENJIANZHAIQUANC"],["166005","ZOJZFXHHA","中欧价值发现混合A","混合型","ZHONGOUJIAZHIFAXIANHUNHEA"],["166006","ZOHYCZHHLOFA","中欧行业成长混合(LOF)A","混合型","ZHONGOUHANGYECHENGZHANGHUNHELOFA"],["166007","ZOHS300ZSZQA","中欧沪深300指数增强A","股票指数","ZHONGOUHUSHEN300ZHISHUZENGQIANGA"],["166008","ZOZQHBZQLOFA","中欧增强回报债券(LOF)A","债券型","ZHONGOUZENGQIANGHUIBAOZHAIQUANLOFA"],["166009","ZOXDLHHLOFA","中欧新动力混合(LOF)A","混合型","ZHONGOUXINDONGLIHUNHELOFA"],["166010","ZODLFJZQ","中欧鼎利分级债券","债券型","ZHONGOUDINGLIFENJIZHAIQUAN"],["166011","ZOSSCZHHLOFA","中欧盛世成长混合(LOF)A","混合型","ZHONGOUSHENGSHICHENGZHANGHUNHELOFA"],["166012","ZOXYZLZQLOFC","中欧信用增利债券(LOF)C","债券型","ZHONGOUXINYONGZENGLIZHAIQUANLOFC"],["166014","ZOHBA","中欧货币A","货币型","ZHONGOUHUOBIA"],["166015","ZOHBB","中欧货币B","货币型","ZHONGOUHUOBIB"],["166016","ZOCZZQLOFC","中欧纯债债券(LOF)C","债券型","ZHONGOUCHUNZHAIZHAIQUANLOFC"],["166019","ZOJZZXHHA","中欧价值智选混合A","混合型","ZHONGOUJIAZHIZHIXUANHUNHEA"],["166020","ZOCZYXHHA","中欧成长优选混合A","混合型","ZHONGOUCHENGZHANGYOUXUANHUNHEA"],["166021","ZOTL","中欧添利","债券型","ZHONGOUTIANLI"],["166022","ZOTA","中欧添A","固定收益","ZHONGOUTIANA"],["166105","XDAYXAZQ","信达澳银鑫安债券","债券型","XINDAAOYINXINANZHAIQUAN"],["166301","HSXQSYXLHPZHH","华商新趋势优选灵活配置混合","混合型","HUASHANGXINQUSHIYOUXUANLINGHUOPEIZHIHUNHE"],["166401","PYASWJZLZQC","浦银安盛稳健增利债券C","债券型","PUYINANSHENGWENJIANZENGLIZHAIQUANC"],["166402","PYHGSJBM100ZS","浦银沪港深基本面100指数","股票指数","PUYINHUGANGSHENJIBENMIAN100ZHISHU"],["166801","ZSJCXSW","浙商聚潮新思维","混合型","ZHESHANGJUCHAOXINSAIWEI"],["166802","ZSHS300ZSFJ","浙商沪深300指数分级","股票指数","ZHESHANGHUSHEN300ZHISHUFENJI"],["166902","MSJYPWZLA","民生加银平稳增利A","定开债券","MINSHENGJIAYINPINGWENZENGLIA"],["166903","MSJYPWZLC","民生加银平稳增利C","定开债券","MINSHENGJIAYINPINGWENZENGLIC"],["166904","MSJYTLA","民生加银添利A","定开债券","MINSHENGJIAYINTIANLIA"],["166905","MSJYTLC","民生加银添利C","定开债券","MINSHENGJIAYINTIANLIC"],["167001","PADHDTHH","平安大华鼎泰混合","混合型","PINGANDAHUADINGTAIHUNHE"],["167002","PADHDYDKHH","平安大华鼎越定开混合","混合型","PINGANDAHUADINGYUEDINGKAIHUNHE"],["167003","PADHDHHH","平安大华鼎弘混合","混合型","PINGANDAHUADINGHONGHUNHE"],["167004","PADHDFDKHH","平安大华鼎沣定开混合","混合型","PINGANDAHUADINGFENGDINGKAIHUNHE"],["167301","FZFBBXZTZSFJ","方正富邦保险主题指数分级","股票指数","FANGZHENGFUBANGBAOXIANZHUTIZHISHUFENJI"],["167501","AXBLZQLOF","安信宝利债券(LOF)","债券型","ANXINBAOLIZHAIQUANLOF"],["167503","AXYDYLFJ","安信一带一路分级","股票指数","ANXINYIDAIYILUFENJI"],["167601","GJHS300ZSFJ","国金沪深300指数分级","股票指数","GUOJINHUSHEN300ZHISHUFENJI"],["167701","DBDXZGQZZSFJ","德邦德信中高企债指数分级","债券指数","DEBANGDEXINZHONGGAOQIZHAIZHISHUFENJI"],["167702","DBLHYXGPLOFA","德邦量化优选股票(LOF)A","股票型","DEBANGLIANGHUAYOUXUANGUPIAOLOFA"],["167703","DBLHYXGPLOFC","德邦量化优选股票(LOF)C","股票型","DEBANGLIANGHUAYOUXUANGUPIAOLOFC"],["168001","GSABZZYLCYZSFJ","国寿安保中证养老产业指数分级","股票指数","GUOSHOUANBAOZHONGZHENGYANGLAOCHANYEZHISHUFENJI"],["168101","JTRZDZHH","九泰锐智定增混合","混合型","JIUTAIRUIZHIDINGZENGHUNHE"],["168102","JTRFSJQDHH","九泰锐富事件驱动混合","混合型","JIUTAIRUIFUSHIJIANQUDONGHUNHE"],["168103","JTRYDZHH","九泰锐益定增混合","混合型","JIUTAIRUIYIDINGZENGHUNHE"],["168104","JTRFDZHH","九泰锐丰定增混合","混合型","JIUTAIRUIFENGDINGZENGHUNHE"],["168105","JTTFDZHH","九泰泰富定增混合","混合型","JIUTAITAIFUDINGZENGHUNHE"],["168106","JTRHDZHHA","九泰锐华定增混合A","混合型","JIUTAIRUIHUADINGZENGHUNHEA"],["168107","JTRHDZHHC","九泰锐华定增混合C","混合型","JIUTAIRUIHUADINGZENGHUNHEC"],["168108","JTRCDZHH","九泰锐诚定增混合","混合型","JIUTAIRUICHENGDINGZENGHUNHE"],["168201","ZRYDYLFJ","中融一带一路分级","股票指数","ZHONGRONGYIDAIYILUFENJI"],["168203","ZRGZGTHYZSFJ","中融国证钢铁行业指数分级","股票指数","ZHONGRONGGUOZHENGGANGTIEHANGYEZHISHUFENJI"],["168204","ZRZZMTZSFJ","中融中证煤炭指数分级","股票指数","ZHONGRONGZHONGZHENGMEITANZHISHUFENJI"],["168205","ZRZZYHZSFJ","中融中证银行指数分级","股票指数","ZHONGRONGZHONGZHENGYINHANGZHISHUFENJI"],["168301","DHXLDZHH","东海祥龙定增混合","混合型","DONGHAIXIANGLONGDINGZENGHUNHE"],["168401","HTCXDZLHPZHH","红土创新定增灵活配置混合","混合型","HONGTUCHUANGXINDINGZENGLINGHUOPEIZHIHUNHE"],["169101","DFHRFHH","东方红睿丰混合","混合型","DONGFANGHONGRUIFENGHUNHE"],["169102","DFHRYHH","东方红睿阳混合","混合型","DONGFANGHONGRUIYANGHUNHE"],["169103","DFHRXHGSHH","东方红睿轩沪港深混合","混合型","DONGFANGHONGRUIXUANHUGANGSHENHUNHE"],["169104","DFHRMHGSHH","东方红睿满沪港深混合","混合型","DONGFANGHONGRUIMANHUGANGSHENHUNHE"],["169105","DFHRHHGSHH","东方红睿华沪港深混合","混合型","DONGFANGHONGRUIHUAHUGANGSHENHUNHE"],["169201","ZSHJDYDZLHPZHH","浙商汇金鼎盈定增灵活配置混合","混合型","ZHESHANGHUIJINDINGYINGDINGZENGLINGHUOPEIZHIHUNHE"],["180001","YHYSQY","银华优势企业","混合型","YINHUAYOUSHIQIYE"],["180002","YHBBZZ","银华保本增值","保本型","YINHUABAOBENZENGZHI"],["180003","YHDQS88","银华道琼斯88","股票指数","YINHUADAOQIONGSI88"],["180008","YHHBA","银华货币A","货币型","YINHUAHUOBIA"],["180009","YHHBB","银华货币B","货币型","YINHUAHUOBIB"],["180010","YHYZZZHH","银华优质增长混合","混合型","YINHUAYOUZHIZENGZHANGHUNHE"],["180011","YHYSQY","银华优势企业(后端)","混合型","YINHUAYOUSHIQIYE"],["180012","YHFYZTHH","银华富裕主题混合","混合型","YINHUAFUYUZHUTIHUNHE"],["180013","YHLXCLHH","银华领先策略混合","混合型","YINHUALINGXIANCELUEHUNHE"],["180015","YHZQZQ","银华增强债券","债券型","YINHUAZENGQIANGZHAIQUAN"],["180018","YHHXZT","银华和谐主题","混合型","YINHUAHEXIEZHUTI"],["180020","YHCZXF","银华成长先锋","混合型","YINHUACHENGZHANGXIANFENG"],["180025","YHXYSLZQA","银华信用双利债券A","债券型","YINHUAXINYONGSHUANGLIZHAIQUANA"],["180026","YHXYSLZQC","银华信用双利债券C","债券型","YINHUAXINYONGSHUANGLIZHAIQUANC"],["180028","YHYXBB","银华永祥保本","保本型","YINHUAYONGXIANGBAOBEN"],["180029","YHYTJJZQA","银华永泰积极债券A","债券型","YINHUAYONGTAIJIJIZHAIQUANA"],["180030","YHYTJJZQC","银华永泰积极债券C","债券型","YINHUAYONGTAIJIJIZHAIQUANC"],["180031","YHZXPHH","银华中小盘混合","混合型","YINHUAZHONGXIAOPANHUNHE"],["180033","YHSZ50DQLJ","银华上证50等权联接","联接基金","YINHUASHANGZHENG50DENGQUANLIANJIE"],["180052","YHBBZZ","银华保本增值","保本型","YINHUABAOBENZENGZHI"],["183001","YHQQYX","银华全球优选","QDII","YINHUAQUANQIUYOUXUAN"],["184722","JJJJ","基金久嘉","封闭式","JIJINJIUJIA"],["184801","PHQHWKREITS","鹏华前海万科REITS","混合型","PENGHUAQIANHAIWANKEREITS"],["200001","CCJHLHPZHH","长城久恒灵活配置混合","混合型","CHANGCHENGJIUHENGLINGHUOPEIZHIHUNHE"],["200002","CCJTHS300ZS","长城久泰沪深300指数","股票指数","CHANGCHENGJIUTAIHUSHEN300ZHISHU"],["200003","CCHBA","长城货币A","货币型","CHANGCHENGHUOBIA"],["200006","CCXFZZHH","长城消费增值混合","混合型","CHANGCHENGXIAOFEIZENGZHIHUNHE"],["200007","CCAXHBHH","长城安心回报混合","混合型","CHANGCHENGANXINHUIBAOHUNHE"],["200008","CCPPYXHH","长城品牌优选混合","混合型","CHANGCHENGPINPAIYOUXUANHUNHE"],["200009","CCWJZL","长城稳健增利","债券型","CHANGCHENGWENJIANZENGLI"],["200010","CCSDLHH","长城双动力混合","混合型","CHANGCHENGSHUANGDONGLIHUNHE"],["200011","CCJQHYLT","长城景气行业龙头","混合型","CHANGCHENGJINGQIHANGYELONGTOU"],["200012","CCZXPCCHH","长城中小盘成长混合","混合型","CHANGCHENGZHONGXIAOPANCHENGZHANGHUNHE"],["200013","CCJJZLZQA","长城积极增利债券A","债券型","CHANGCHENGJIJIZENGLIZHAIQUANA"],["200015","CCYHSJHH","长城优化升级混合","混合型","CHANGCHENGYOUHUASHENGJIHUNHE"],["200016","CCBB","长城保本","保本型","CHANGCHENGBAOBEN"],["200103","CCHBB","长城货币B","货币型","CHANGCHENGHUOBIB"],["200113","CCJJZLZQC","长城积极增利债券C","债券型","CHANGCHENGJIJIZENGLIZHAIQUANC"],["201001","CCJHLHPZHH","长城久恒灵活配置混合(后端)","混合型","CHANGCHENGJIUHENGLINGHUOPEIZHIHUNHE"],["201002","CCJTHS300ZS","长城久泰沪深300指数(后端)","股票指数","CHANGCHENGJIUTAIHUSHEN300ZHISHU"],["202001","NFWJCZ","南方稳健成长","混合型","NANFANGWENJIANCHENGZHANG"],["202002","NFWJCZEH","南方稳健成长贰号","混合型","NANFANGWENJIANCHENGZHANGERHAO"],["202003","NFJYCZHH","南方绩优成长混合","混合型","NANFANGJIYOUCHENGZHANGHUNHE"],["202004","NFJYCZHH","南方绩优成长混合(后端)","混合型","NANFANGJIYOUCHENGZHANGHUNHE"],["202005","NFCFJXHH","南方成份精选混合","混合型","NANFANGCHENGFENJINGXUANHUNHE"],["202006","NFCFJXHH","南方成份精选混合(后端)","混合型","NANFANGCHENGFENJINGXUANHUNHE"],["202007","NFLYCYZTHH","南方隆元产业主题混合","混合型","NANFANGLONGYUANCHANYEZHUTIHUNHE"],["202008","NFLYCYZTHH","南方隆元产业主题混合(后端)","混合型","NANFANGLONGYUANCHANYEZHUTIHUNHE"],["202009","NFSYHLHH","南方盛元红利混合","混合型","NANFANGSHENGYUANHONGLIHUNHE"],["202010","NFSYHLHH","南方盛元红利混合(后端)","混合型","NANFANGSHENGYUANHONGLIHUNHE"],["202011","NFYXJZHHA","南方优选价值混合A","混合型","NANFANGYOUXUANJIAZHIHUNHEA"],["202012","NFYXJZHHA","南方优选价值混合A(后端)","混合型","NANFANGYOUXUANJIAZHIHUNHEA"],["202015","NFKYHS300ETFLJA","南方开元沪深300ETF联接A","联接基金","NANFANGKAIYUANHUSHEN300ETFLIANJIEA"],["202016","NFKYHS300ETFLJA","南方开元沪深300ETF联接A(后端)","联接基金","NANFANGKAIYUANHUSHEN300ETFLIANJIEA"],["202017","NFSZCFETFLJA","南方深证成份ETF联接A","联接基金","NANFANGSHENZHENGCHENGFENETFLIANJIEA"],["202018","NFSZCFETFLJA","南方深证成份ETF联接A(后端)","联接基金","NANFANGSHENZHENGCHENGFENETFLIANJIEA"],["202019","NFCLYHHH","南方策略优化混合","混合型","NANFANGCELUEYOUHUAHUNHE"],["202020","NFCLYHHH","南方策略优化混合(后端)","混合型","NANFANGCELUEYOUHUAHUNHE"],["202021","NFXKETFLJA","南方小康ETF联接A","联接基金","NANFANGXIAOKANGETFLIANJIEA"],["202022","NFXKETFLJA","南方小康ETF联接A(后端)","联接基金","NANFANGXIAOKANGETFLIANJIEA"],["202023","NFYXCZ","南方优选成长","混合型","NANFANGYOUXUANCHENGZHANG"],["202024","NFYXCZ","南方优选成长(后端)","混合型","NANFANGYOUXUANCHENGZHANG"],["202025","NFSZ380LJ","南方上证380联接","联接基金","NANFANGSHANGZHENG380LIANJIE"],["202026","NFSZ380LJ","南方上证380联接(后端)","联接基金","NANFANGSHANGZHENG380LIANJIE"],["202027","NFGDZBLHPZHH","南方高端装备灵活配置混合","混合型","NANFANGGAODUANZHUANGBEILINGHUOPEIZHIHUNHE"],["202028","NFGDZBLHPZHH","南方高端装备灵活配置混合(后端)","混合型","NANFANGGAODUANZHUANGBEILINGHUOPEIZHIHUNHE"],["202101","NFBYZQ","南方宝元债券","债券型","NANFANGBAOYUANZHAIQUAN"],["202102","NFDLZQZQC","南方多利增强债券C","债券型","NANFANGDUOLIZENGQIANGZHAIQUANC"],["202103","NFDLZQZQA","南方多利增强债券A","债券型","NANFANGDUOLIZENGQIANGZHAIQUANA"],["202105","NFGLZQA/B","南方广利债券A/B","债券型","NANFANGANLIZHAIQUANA/B"],["202106","NFGLZQA/B","南方广利债券A/B(后端)","债券型","NANFANGANLIZHAIQUANA/B"],["202107","NFGLZQC","南方广利债券C","债券型","NANFANGANLIZHAIQUANC"],["202108","NFRYA","南方润元A","债券型","NANFANGRUNYUANA"],["202109","NFRYA","南方润元A(后端)","债券型","NANFANGRUNYUANA"],["202110","NFRYC","南方润元C","债券型","NANFANGRUNYUANC"],["202202","NFBXZZ","南方避险增值","保本型","NANFANGBIXIANZENGZHI"],["202211","NFHYBB","南方恒元保本","保本型","NANFANGHENGYUANBAOBEN"],["202212","NFBB","南方保本","保本型","NANFANGBAOBEN"],["202213","NFAX","南方安心","保本型","NANFANGANXIN"],["202301","NFXJZLHBA","南方现金增利货币A","货币型","NANFANGXIANJINZENGLIHUOBIA"],["202302","NFXJZLHBB","南方现金增利货币B","货币型","NANFANGXIANJINZENGLIHUOBIB"],["202303","NFLC14TA","南方理财14天A","理财型","NANFANGLICAI14TIANA"],["202304","NFLC14TB","南方理财14天B","理财型","NANFANGLICAI14TIANB"],["202305","NFLC60TA","南方理财60天A","理财型","NANFANGLICAI60TIANA"],["202306","NFLC60TB","南方理财60天B","理财型","NANFANGLICAI60TIANB"],["202307","NFSYBHBA","南方收益宝货币A","货币型","NANFANGSHOUYIBAOHUOBIA"],["202308","NFSYBHBB","南方收益宝货币B","货币型","NANFANGSHOUYIBAOHUOBIB"],["202801","NFQQJX","南方全球精选","QDII","NANFANGQUANQIUJINGXUAN"],["206001","PHHTA","鹏华弘泰A","混合型","PENGHUAHONGTAIA"],["206002","PHJXCZHH","鹏华精选成长混合","混合型","PENGHUAJINGXUANCHENGZHANGHUNHE"],["206003","PHXYZLZQA","鹏华信用增利债券A","债券型","PENGHUAXINYONGZENGLIZHAIQUANA"],["206004","PHXYZLZQB","鹏华信用增利债券B","债券型","PENGHUAXINYONGZENGLIZHAIQUANB"],["206005","PHSZMQ50ETFLJ","鹏华上证民企50ETF联接","联接基金","PENGHUASHANGZHENGMINQI50ETFLIANJIE"],["206006","PHHQFX","鹏华环球发现","QDII","PENGHUAHUANQIUFAXIAN"],["206007","PHXFYXHH","鹏华消费优选混合","混合型","PENGHUAXIAOFEIYOUXUANHUNHE"],["206008","PHFSWGZQ","鹏华丰盛稳固债券","债券型","PENGHUAFENGSHENGWENGUZHAIQUAN"],["206009","PHXXCYHH","鹏华新兴产业混合","混合型","PENGHUAXINXINGCHANYEHUNHE"],["206010","PHSZMYLJ","鹏华深证民营联接","联接基金","PENGHUASHENZHENGMINYINGLIANJIE"],["206011","PHMGFDC","鹏华美国房地产","QDII","PENGHUAMEIGUOFANGDECHAN"],["206012","PHJZJXGP","鹏华价值精选股票","股票型","PENGHUAJIAZHIJINGXUANGUPIAO"],["206013","PHJGBBHH","鹏华金刚保本混合","保本型","PENGHUAJINGANGBAOBENHUNHE"],["206015","PHCZZQ","鹏华纯债债券","债券型","PENGHUACHUNZHAIZHAIQUAN"],["206018","PHCYZZQ","鹏华产业债债券","债券型","PENGHUACHANYEZHAIZHAIQUAN"],["210001","JYCFYX","金鹰成份优选","混合型","JINYINGCHENGFENYOUXUAN"],["210002","JYHLJZ","金鹰红利价值","混合型","JINYINGHONGLIJIAZHI"],["210003","JYHYYSHH","金鹰行业优势混合","混合型","JINYINGHANGYEYOUSHIHUNHE"],["210004","JYWJCZHH","金鹰稳健成长混合","混合型","JINYINGWENJIANCHENGZHANGHUNHE"],["210005","JYZTYSHH","金鹰主题优势混合","混合型","JINYINGZHUTIYOUSHIHUNHE"],["210006","JYBBHHA","金鹰保本混合A","保本型","JINYINGBAOBENHUNHEA"],["210007","JYJSLXLHPZHHA","金鹰技术领先灵活配置混合A","混合型","JINYINGJISHULINGXIANLINGHUOPEIZHIHUNHEA"],["210008","JYCLPZHH","金鹰策略配置混合","混合型","JINYINGCELUEPEIZHIHUNHE"],["210009","JYHXZYHH","金鹰核心资源混合","混合型","JINYINGHEXINZIYUANHUNHE"],["210010","JYLHPZHHA","金鹰灵活配置混合A","混合型","JINYINGLINGHUOPEIZHIHUNHEA"],["210011","JYLHPZHHC","金鹰灵活配置混合C","混合型","JINYINGLINGHUOPEIZHIHUNHEC"],["210012","JYHBA","金鹰货币A","货币型","JINYINGHUOBIA"],["210013","JYHBB","金鹰货币B","货币型","JINYINGHUOBIB"],["210014","JYYFBB","金鹰元丰保本","保本型","JINYINGYUANFENGBAOBEN"],["213001","BYHLSYLHPZHH","宝盈鸿利收益灵活配置混合","混合型","BAOYINGHONGLISHOUYILINGHUOPEIZHIHUNHE"],["213002","BYFYHZZHH","宝盈泛沿海增长混合","混合型","BAOYINGFANYANHAIZENGZHANGHUNHE"],["213003","BYCLZZHH","宝盈策略增长混合","混合型","BAOYINGCELUEZENGZHANGHUNHE"],["213006","BYHXYSHHA","宝盈核心优势混合A","混合型","BAOYINGHEXINYOUSHIHUNHEA"],["213007","BYZQSYZQAB","宝盈增强收益债券A/B","债券型","BAOYINGZENGQIANGSHOUYIZHAIQUANAB"],["213008","BYZYYXHH","宝盈资源优选混合","混合型","BAOYINGZIYUANYOUXUANHUNHE"],["213009","BYHBA","宝盈货币A","货币型","BAOYINGHUOBIA"],["213010","BYZZ100ZQ","宝盈中证100增强","股票指数","BAOYINGZHONGZHENG100ZENGQIANG"],["213907","BYZQSYZQAB","宝盈增强收益债券A/B(后端)","债券型","BAOYINGZENGQIANGSHOUYIZHAIQUANAB"],["213908","BYZYYXHH","宝盈资源优选混合(后端)","混合型","BAOYINGZIYUANYOUXUANHUNHE"],["213909","BYHBB","宝盈货币B","货币型","BAOYINGHUOBIB"],["213917","BYZQZQC","宝盈增强债券C","债券型","BAOYINGZENGQIANGZHAIQUANC"],["217001","ZSATHH","招商安泰混合","混合型","ZHAOSHANGANTAIHUNHE"],["217002","ZSATPH","招商安泰平衡","混合型","QIAOSHANGANTAIPINGHENG"],["217003","ZSATZQA","招商安泰债券A","债券型","ZHAOSHANGANTAIZHAIQUANA"],["217004","ZSXJZZHBA","招商现金增值货币A","货币型","ZHAOSHANGXIANJINZENGZHIHUOBIA"],["217005","ZSXF","招商先锋","混合型","QIAOSHANGXIANFENG"],["217008","ZSABZLZQ","招商安本增利债券","债券型","ZHAOSHANGANBENZENGLIZHAIQUAN"],["217009","ZSHXJZ","招商核心价值","混合型","QIAOSHANGHEXINJIAZHI"],["217010","ZSDPLCHH","招商大盘蓝筹混合","混合型","ZHAOSHANGDAPANLANCHOUHUNHE"],["217011","ZSAXZQ","招商安心债券","债券型","QIAOSHANGANXINZHAIQUAN"],["217012","ZSHYLXHHA","招商行业领先混合A","混合型","ZHAOSHANGHANGYELINGXIANHUNHEA"],["217013","ZSZXPHH","招商中小盘混合","混合型","ZHAOSHANGZHONGXIAOPANHUNHE"],["217014","ZSXJZZHBB","招商现金增值货币B","货币型","ZHAOSHANGXIANJINZENGZHIHUOBIB"],["217015","ZSQQZY","招商全球资源","QDII","QIAOSHANGQUANQIUZIYUAN"],["217016","ZSSZ100ZSA","招商深证100指数A","股票指数","ZHAOSHANGSHENZHENG100ZHISHUA"],["217017","ZSSZXF80ETFLJA","招商上证消费80ETF联接A","联接基金","ZHAOSHANGSHANGZHENGXIAOFEI80ETFLIANJIEA"],["217018","ZSARJQZQ","招商安瑞进取债券","债券型","ZHAOSHANGANRUIJINQUZHAIQUAN"],["217019","ZSSZTMT50ETFLJA","招商深证TMT50ETF联接A","联接基金","ZHAOSHANGSHENZHENGTMT50ETFLIANJIEA"],["217020","ZSADBBHH","招商安达保本混合","保本型","ZHAOSHANGANDABAOBENHUNHE"],["217021","ZSYQLHPZ","招商优企灵活配置","混合型","QIAOSHANGYOUQILINGHUOPEIZHI"],["217022","ZSCYZQA","招商产业债券A","债券型","ZHAOSHANGCHANYEZHAIQUANA"],["217023","ZSXYZQZQ","招商信用增强债券","债券型","ZHAOSHANGXINYONGZENGQIANGZHAIQUAN"],["217024","ZSAYBB","招商安盈保本","保本型","QIAOSHANGANYINGBAOBEN"],["217025","ZSLC7TZQA","招商理财7天债券A","理财型","ZHAOSHANGLICAI7TIANZHAIQUANA"],["217026","ZSLC7TZQB","招商理财7天债券B","理财型","ZHAOSHANGLICAI7TIANZHAIQUANB"],["217027","ZSYSCJ50ZSA","招商央视财经50指数A","股票指数","ZHAOSHANGYANGSHICAIJING50ZHISHUA"],["217203","ZSATZQB","招商安泰债券B","债券型","ZHAOSHANGANTAIZHAIQUANB"],["229002","TDHLNXCLHH","泰达宏利逆向策略混合","混合型","TAIDAHONGLINIXIANGCELUEHUNHE"],["233001","DMJCHYHH","大摩基础行业混合","混合型","DAMOJICHUHANGYEHUNHE"],["233005","DMQSYZQ","大摩强收益债券","债券型","DAMOQIANGSHOUYIZHAIQUAN"],["233006","DMLXYSHH","大摩领先优势混合","混合型","DAMOLINGXIANYOUSHIHUNHE"],["233007","DMZYCZHH","大摩卓越成长混合","混合型","DAMOZHUOYUECHENGZHANGHUNHE"],["233008","DMXFLH","大摩消费领航","混合型","DAMOXIAOFEILINGHANG"],["233009","DMDYZCLHH","大摩多因子策略混合","混合型","DAMODUOYINZICELUEHUNHE"],["233010","DMSZ300ZSZQ","大摩深证300指数增强","股票指数","DAMOSHENZHENG300ZHISHUZENGQIANG"],["233011","DMZTYXHH","大摩主题优选混合","混合型","DAMOZHUTIYOUXUANHUNHE"],["233012","DMDYSYZQA","大摩多元收益债券A","债券型","DAMODUOYUANSHOUYIZHAIQUANA"],["233013","DMDYSYZQC","大摩多元收益债券C","债券型","DAMODUOYUANSHOUYIZHAIQUANC"],["233015","DMLHPZHH","大摩量化配置混合","混合型","DAMOLIANGHUAPEIZHIHUNHE"],["240001","HBBKXFP","华宝宝康消费品","混合型","HUABAOBAOKANGXIAOFEIPIN"],["240002","HBBKLHPZ","华宝宝康灵活配置","混合型","HUABAOBAOKANGLINGHUOPEIZHI"],["240003","HBBKZQ","华宝宝康债券","债券型","HUABAOBAOKANGZHAIQUAN"],["240004","HBDLZHHH","华宝动力组合混合","混合型","HUABAODONGLIZUHEHUNHE"],["240005","HBDCLZZ","华宝多策略增长","股票型","HUABAODUOCELUEZENGZHANG"],["240006","HBXJBHBA","华宝现金宝货币A","货币型","HUABAOXIANJINBAOHUOBIA"],["240007","HBXJBHBB","华宝现金宝货币B","货币型","HUABAOXIANJINBAOHUOBIB"],["240008","HBSYZZ","华宝收益增长","混合型","HUABAOSHOUYIZENGZHANG"],["240009","HBXJCZHH","华宝先进成长混合","混合型","HUABAOXIANJINCHENGZHANGHUNHE"],["240010","HBHYJXHH","华宝行业精选混合","混合型","HUABAOHANGYEJINGXUANHUNHE"],["240011","HBDPJXHH","华宝大盘精选混合","混合型","HUABAODAPANJINGXUANHUNHE"],["240012","HBZQZQA","华宝增强债券A","债券型","HUABAOZENGQIANGZHAIQUANA"],["240013","HBZQZQB","华宝增强债券B","债券型","HUABAOZENGQIANGZHAIQUANB"],["240014","HBZZ100","华宝中证100","股票指数","HUABAOZHONGZHENG100"],["240015","HBZZ100","华宝中证100(后端)","股票指数","HUABAOZHONGZHENG100"],["240016","HBSZ180LJ","华宝上证180联接","联接基金","HUABAOSHANGZHENG180LIANJIE"],["240017","HBXXCYHH","华宝新兴产业混合","混合型","HUABAOXINXINGCHANYEHUNHE"],["240018","HBKZZ","华宝可转债","债券型","HUABAOKEZHUANZHAI"],["240019","HBSZ180CZLJ","华宝上证180成长联接","联接基金","HUABAOSHANGZHENG180CHENGZHANGLIANJIE"],["240020","HBYYSWHH","华宝医药生物混合","混合型","HUABAOYIYAOSHENGWUHUNHE"],["240022","HBZYYXHH","华宝资源优选混合","混合型","HUABAOZIYUANYOUXUANHUNHE"],["241001","HBHWZGHHQDII","华宝海外中国混合(QDII)","QDII","HUABAOHAIWAIZHONGGUOHUNHEQDII"],["253010","GLAAXCZHH","国联安安心成长混合","混合型","GUOLIANANANXINCHENGZHANGHUNHE"],["253020","GLADSZLZA","国联安德盛增利债A","债券型","GUOLIANANDESHENGZENGLIZHAIA"],["253021","GLADSZLZB","国联安德盛增利债B","债券型","GUOLIANANDESHENGZENGLIZHAIB"],["253030","GLAXXZYZQ","国联安信心增益债券","债券型","GUOLIANANXINXINZENGYIZHAIQUAN"],["253050","GLAHBA","国联安货币A","货币型","GUOLIANANHUOBIA"],["253051","GLAHBB","国联安货币B","货币型","GUOLIANANHUOBIB"],["253060","GLAXXZZZQA","国联安信心增长债券A","债券型","GUOLIANANXINXINZENGZHANGZHAIQUANA"],["253061","GLAXXZZZQB","国联安信心增长债券B","债券型","GUOLIANANXINXINZENGZHANGZHAIQUANB"],["255010","GLAWJ","国联安稳健","混合型","GUOLIANANWENJIAN"],["257010","GLADSXPJX","国联安德盛小盘精选","混合型","GUOLIANANDESHENGXIAOPANJINGXUAN"],["257020","GLAJXHH","国联安精选混合","混合型","GUOLIANANJINGXUANHUNHE"],["257021","GLAJXHH","国联安精选混合(后端)","混合型","GUOLIANANJINGXUANHUNHE"],["257030","GLAYSHH","国联安优势混合","混合型","GUOLIANANYOUSHIHUNHE"],["257031","GLAYSHH","国联安优势混合(后端)","混合型","GUOLIANANYOUSHIHUNHE"],["257040","GLAHLHH","国联安红利混合","混合型","GUOLIANANHONGLIHUNHE"],["257041","GLAHLHH","国联安红利混合(后端)","混合型","GUOLIANANHONGLIHUNHE"],["257050","GLAZTQDHH","国联安主题驱动混合","混合型","GUOLIANANZHUTIQUDONGHUNHE"],["257060","GLASPETFLJ","国联安商品ETF联接","联接基金","GUOLIANANSHANGPINETFLIANJIE"],["257070","GLAYXHYHH","国联安优选行业混合","混合型","GUOLIANANYOUXUANHANGYEHUNHE"],["260101","JSCCYXHH","景顺长城优选混合","混合型","JINGSHUNCHANGCHENGYOUXUANHUNHE"],["260102","JSHBA","景顺货币A","货币型","JINGSHUNHUOBIA"],["260103","JSCCDLPH","景顺长城动力平衡","混合型","JINGSHUNCHANGCHENGDONGLIPINGHENG"],["260104","JSCCNXZZHH","景顺长城内需增长混合","混合型","JINGSHUNCHANGCHENGNEIXUZENGZHANGHUNHE"],["260108","JSCCXXCZHH","景顺长城新兴成长混合","混合型","JINGSHUNCHANGCHENGXINXINGCHENGZHANGHUNHE"],["260109","JSCCNXEHHH","景顺长城内需贰号混合","混合型","JINGSHUNCHANGCHENGNEIXUERHAOHUNHE"],["260110","JSCCJXLCHH","景顺长城精选蓝筹混合","混合型","JINGSHUNCHANGCHENGJINGXUANLANCHOUHUNHE"],["260111","JSCCGSZLHH","景顺长城公司治理混合","混合型","JINGSHUNCHANGCHENGGONGSIZHILIHUNHE"],["260112","JSCCNYJJHH","景顺长城能源基建混合","混合型","JINGSHUNCHANGCHENGNENGYUANJIJIANHUNHE"],["260115","JSCCZXPHH","景顺长城中小盘混合","混合型","JINGSHUNCHANGCHENGZHONGXIAOPANHUNHE"],["260116","JSCCHXJZLHHA","景顺长城核心竞争力混合A","混合型","JINGSHUNCHANGCHENGHEXINJINGZHENGLIHUNHEA"],["260117","JSCCZZCYHH","景顺长城支柱产业混合","混合型","JINGSHUNCHANGCHENGZHIZHUCHANYEHUNHE"],["260202","JSCCHBB","景顺长城货币B","货币型","JINGSHUNCHANGCHENGHUOBIB"],["261001","JSCCWDZQA","景顺长城稳定债券A","债券型","JINGSHUNCHANGCHENGWENDINGZHAIQUANA"],["261002","JSCCYXZLZQA","景顺长城优信增利债券A","债券型","JINGSHUNCHANGCHENGYOUXINZENGLIZHAIQUANA"],["261101","JSCCWDZQC","景顺长城稳定债券C","债券型","JINGSHUNCHANGCHENGWENDINGZHAIQUANC"],["261102","JSCCXZZQC","景顺长城信增债券C","债券型","JINGSHUNCHANGCHENGXINZENGZHAIQUANC"],["262001","JSCCDZHHH","景顺长城大中华混合","QDII","JINGSHUNCHANGCHENGDAZHONGHUAHUNHE"],["263001","JSCCSZ180LJ","景顺长城上证180联接","联接基金","JINGSHUNCHANGCHENGSHANGZHENG180LIANJIE"],["270001","GFJF","广发聚富","混合型","GUANGFAJUFU"],["270002","GFWJZZ","广发稳健增长","混合型","GUANGFAWENJIANZENGZHANG"],["270004","GFHBA","广发货币A","货币型","GUANGFAHUOBIA"],["270005","GFJFHH","广发聚丰混合","混合型","GUANGFAJUFENGHUNHE"],["270006","GFCLYX","广发策略优选","混合型","GUANGFACELUEYOUXUAN"],["270007","GFDPCZ","广发大盘成长","混合型","GUANGFADAPANCHENGZHANG"],["270008","GFHXJXHH","广发核心精选混合","混合型","GUANGFAHEXINJINGXUANHUNHE"],["270009","GFZQZQ","广发增强债券","债券型","GUANGFAZENGQIANGZHAIQUAN"],["270010","GFHS300ETFLJA","广发沪深300ETF联接A","联接基金","GUANGFAHUSHEN300ETFLIANJIEA"],["270011","GFJF","广发聚富(后端)","混合型","GUANGFAJUFU"],["270012","GFWJZZ","广发稳健增长(后端)","混合型","GUANGFAWENJIANZENGZHANG"],["270014","GFHBB","广发货币B","货币型","GUANGFAHUOBIB"],["270015","GFJFHH","广发聚丰混合(后端)","混合型","GUANGFAJUFENGHUNHE"],["270016","GFCLYX","广发策略优选(后端)","混合型","GUANGFACELUEYOUXUAN"],["270017","GFDPCZ","广发大盘成长(后端)","混合型","GUANGFADAPANCHENGZHANG"],["270020","GFHS300ETFLJA","广发沪深300ETF联接A(后端)","联接基金","GUANGFAHUSHEN300ETFLIANJIEA"],["270021","GFJRHH","广发聚瑞混合","混合型","GUANGFAJURUIHUNHE"],["270022","GFNXZZ","广发内需增长","混合型","GUANGFANEIXUZENGZHANG"],["270023","GFQQJXGPQDII","广发全球精选股票(QDII)","QDII","GUANGFAQUANQIUJINGXUANGUPIAOQDII"],["270025","GFHYLXHHA","广发行业领先混合A","混合型","GUANGFAHANGYELINGXIANHUNHEA"],["270026","GFZXB300LJ","广发中小板300联接","联接基金","GUANGFAZHONGXIAOBAN300LIANJIE"],["270027","GFQQNYZS","广发全球农业指数","QDII-指数","GUANGFAQUANQIUNONGYEZHISHU"],["270028","GFZZYJXHH","广发制造业精选混合","混合型","GUANGFAZHIZAOYEJINGXUANHUNHE"],["270029","GFJCXYZQA","广发聚财信用债券A","债券型","GUANGFAJUCAIXINYONGZHAIQUANA"],["270030","GFJCXYZQB","广发聚财信用债券B","债券型","GUANGFAJUCAIXINYONGZHAIQUANB"],["270036","GFZXB300LJ","广发中小板300联接(后端)","联接基金","GUANGFAZHONGXIAOBAN300LIANJIE"],["270041","GFXFPJXHH","广发消费品精选混合","混合型","GUANGFAXIAOFEIPINJINGXUANHUNHE"],["270042","GFNSDK100ZS","广发纳斯达克100指数","QDII-指数","GUANGFANASIDAKE100ZHISHU"],["270043","GFLCNNHZQ","广发理财年年红债券","定开债券","GUANGFALICAINIANNIANHONGZHAIQUAN"],["270044","GFSZTLZQA","广发双债添利债券A","债券型","GUANGFASHUANGZHAITIANLIZHAIQUANA"],["270045","GFSZTLZQC","广发双债添利债券C","债券型","GUANGFASHUANGZHAITIANLIZHAIQUANC"],["270046","GFLC30TZQA","广发理财30天债券A","理财型","GUANGFALICAI30TIANZHAIQUANA"],["270047","GFLC30TZQB","广发理财30天债券B","理财型","GUANGFALICAI30TIANZHAIQUANB"],["270048","GFCZZQA","广发纯债债券A","债券型","GUANGFACHUNZHAIZHAIQUANA"],["270049","GFCZZQC","广发纯债债券C","债券型","GUANGFACHUNZHAIZHAIQUANC"],["270050","GFXJJHH","广发新经济混合","混合型","GUANGFAXINJINGJIHUNHE"],["288001","HXJDHH","华夏经典混合","混合型","HUAXIAJINGDIANHUNHE"],["288002","HXSRHH","华夏收入混合","混合型","HUAXIASHOURUHUNHE"],["288101","HXHBA","华夏货币A","货币型","HUAXIAHUOBIA"],["288102","HXWDSLZQ","华夏稳定双利债券","债券型","HUAXIAWENDINGSHUANGLIZHAIQUAN"],["288201","HXHBB","华夏货币B","货币型","HUAXIAHUOBIB"],["290001","TXTTSYHBA","泰信天天收益货币A","货币型","TAIXINTIANTIANSHOUYIHUOBIA"],["290002","TXXHCL","泰信先行策略","混合型","TAIXINXIANHANGCELUE"],["290003","TXSXSLZQ","泰信双息双利债券","债券型","TAIXINSHUANGXISHUANGLIZHAIQUAN"],["290004","TXYZSHHH","泰信优质生活混合","混合型","TAIXINYOUZHISHENGHUOHUNHE"],["290005","TXYSZZ","泰信优势增长","混合型","TAIXINYOUSHIZENGZHANG"],["290006","TXLCJXHH","泰信蓝筹精选混合","混合型","TAIXINLANCHOUJINGXUANHUNHE"],["290007","TXZQZQA","泰信增强债券A","债券型","TAIXINZENGQIANGZHAIQUANA"],["290008","TXFZZTHH","泰信发展主题混合","混合型","TAIXINFAZHANZHUTIHUNHE"],["290009","TXZQZQ","泰信周期债券","债券型","TAIXINZHOUQIZHAIQUAN"],["290010","TXZZ200","泰信中证200","股票指数","TAIXINZHONGZHENG200"],["290011","TXZXPJXHH","泰信中小盘精选混合","混合型","TAIXINZHONGXIAOPANJINGXUANHUNHE"],["290012","TXHYJXHHA","泰信行业精选混合A","混合型","TAIXINHANGYEJINGXUANHUNHEA"],["290014","TXXDFWYHH","泰信现代服务业混合","混合型","TAIXINXIANDAIFUWUYEHUNHE"],["291007","TXZQZQC","泰信增强债券C","债券型","TAIXINZENGQIANGZHAIQUANC"],["310308","SWLXSLJXHH","申万菱信盛利精选混合","混合型","SHENWANLINGXINSHENGLIJINGXUANHUNHE"],["310318","SWLXHS300ZSZQ","申万菱信沪深300指数增强","股票指数","SHENWANLINGXINHUSHEN300ZHISHUZENGQIANG"],["310328","SWLXXDLHH","申万菱信新动力混合","混合型","SHENWANLINGXINXINDONGLIHUNHE"],["310338","SWLXSYBHBA","申万菱信收益宝货币A","货币型","SHENWANLINGXINSHOUYIBAOHUOBIA"],["310339","SWSYBHBB","申万收益宝货币B","货币型","SHENWANSHOUYIBAOHUOBIB"],["310358","SWLXXJJHH","申万菱信新经济混合","混合型","SHENWANLINGXINXINJINGJIHUNHE"],["310368","SWLXJZYSHH","申万菱信竞争优势混合","混合型","SHENWANLINGXINJINGZHENGYOUSHIHUNHE"],["310378","SWLXTYBZQA","申万菱信添益宝债券A","债券型","SHENWANLINGXINTIANYIBAOZHAIQUANA"],["310379","SWLXTYBZQB","申万菱信添益宝债券B","债券型","SHENWANLINGXINTIANYIBAOZHAIQUANB"],["310388","SWLXXFZZHH","申万菱信消费增长混合","混合型","SHENWANLINGXINXIAOFEIZENGZHANGHUNHE"],["310398","SWLXHS300JZZS","申万菱信沪深300价值指数","股票指数","SHENWANLINGXINHUSHEN300JIAZHIZHISHU"],["310508","SWLXWYBZQ","申万菱信稳益宝债券","债券型","SHENWANLINGXINWENYIBAOZHAIQUAN"],["310518","SWKZHZQ","申万可转换债券","债券型","SHENWANKEZHUANHUANZHAIQUAN"],["320001","NAPH","诺安平衡","混合型","NUOANPINGHENG"],["320002","NAHBA","诺安货币A","货币型","NUOANHUOBIA"],["320003","NAXFHH","诺安先锋混合","混合型","NUOANXIANFENGHUNHE"],["320004","NAYHSYZQ","诺安优化收益债券","债券型","NUOANYOUHUASHOUYIZHAIQUAN"],["320005","NAJZZZHH","诺安价值增长混合","混合型","NUOANJIAZHIZENGZHANGHUNHE"],["320006","NALHPZ","诺安灵活配置","混合型","NUOANLINGHUOPEIZHI"],["320007","NACZHH","诺安成长混合","混合型","NUOANCHENGZHANGHUNHE"],["320008","NAZLZQA","诺安增利债券A","债券型","NUOANZENGLIZHAIQUANA"],["320009","NAZLZQB","诺安增利债券B","债券型","NUOANZENGLIZHAIQUANB"],["320010","NAZZ100","诺安中证100","股票指数","NUOANZHONGZHENG100"],["320011","NAZXPJXHH","诺安中小盘精选混合","混合型","NUOANZHONGXIAOPANJINGXUANHUNHE"],["320012","NAZTJXHH","诺安主题精选混合","混合型","NUOANZHUTIJINGXUANHUNHE"],["320013","NAQQHJ","诺安全球黄金","QDII","NUOANQUANQIUHUANGJIN"],["320014","NASZXXLJ","诺安上证新兴联接","联接基金","NUOANSHANGZHENGXINXINGLIANJIE"],["320015","NABB","诺安保本","保本型","NUOANBAOBEN"],["320016","NADCLHH","诺安多策略混合","混合型","NUOANDUOCELUEHUNHE"],["320017","NAQQBDC","诺安全球不动产","QDII","NUOANQUANQIUBUDONGCHAN"],["320018","NAXDLLHPZ","诺安新动力灵活配置","混合型","NUOANXINDONGLILINGHUOPEIZHI"],["320019","NAHBB","诺安货币B","货币型","NUOANHUOBIB"],["320020","NAHXBB","诺安汇鑫保本","保本型","NUOANHUIXINBAOBEN"],["320021","NASLZQ","诺安双利债券","债券型","NUOANSHUANGLIZHAIQUAN"],["320022","NAYJJXGP","诺安研究精选股票","股票型","NUOANYANJIUJINGXUANGUPIAO"],["340001","XQKZZHH","兴全可转债混合","混合型","XINGQUANKEZHUANZHAIHUNHE"],["340005","XQHB","兴全货币","货币型","XINGQUANHUOBI"],["340006","XQQQSYGP","兴全全球视野股票","股票型","XINGQUANQUANQIUSHIYEGUPIAO"],["340007","XQSHZRHH","兴全社会责任混合","混合型","XINGQUANSHEHUIZERENHUNHE"],["340008","XQYJZZHH","兴全有机增长混合","混合型","XINGQUANYOUJIZENGZHANGHUNHE"],["340009","XQPWZLZQ","兴全磐稳增利债券","债券型","XINGQUANPANWENZENGLIZHAIQUAN"],["350001","TZCFZZ","天治财富增长","混合型","TIANZHICAIFUZENGZHANG"],["350002","TZDTJJHH","天治低碳经济混合","混合型","TIANZHIDITANJINGJIHUNHE"],["350004","TZTDLHB","天治天得利货币","货币型","TIANZHITIANDELIHUOBI"],["350005","TZZGZZ2025","天治中国制造2025","混合型","TIANZHIZHONGGUOZHIZAO2025"],["350006","TZWJSYZQ","天治稳健双盈债券","债券型","TIANZHIWENJIANSHUANGYINGZHAIQUAN"],["350007","TZQSJX","天治趋势精选","混合型","TIANZHIQUSHIJINGXUAN"],["350008","TZXXFHH","天治新消费混合","混合型","TIANZHIXINXIAOFEIHUNHE"],["350009","TZYJQDHHA","天治研究驱动混合A","混合型","TIANZHIYANJIUQUDONGHUNHEA"],["360001","GDLHHX","光大量化核心","股票型","GUANGDALIANGHUAHEXIN"],["360003","GDHB","光大货币","货币型","GUANGDAHUOBI"],["360005","GDBDXHLHH","光大保德信红利混合","混合型","GUANGDAHONGLIHUNHE"],["360006","GDBDXXZZHH","光大保德信新增长混合","混合型","GUANGDAXINZENGZHANGHUNHE"],["360007","GDBDXYSPZHH","光大保德信优势配置混合","混合型","GUANGDAYOUSHIPEIZHIHUNHE"],["360008","GDZLA","光大增利A","债券型","GUANGDAZENGLIA"],["360009","GDZLC","光大增利C","债券型","GUANGDAZENGLIC"],["360010","GDBDXJHJXHH","光大保德信均衡精选混合","混合型","GUANGDAJUNHENGJINGXUANHUNHE"],["360011","GDDTYX","光大动态优选","混合型","GUANGDADONGTAIYOUXUAN"],["360012","GDBDXZXPHH","光大保德信中小盘混合","混合型","GUANGDABAODEXINZHONGXIAOPANHUNHE"],["360013","GDTYZQA","光大添益债券A","债券型","GUANGDATIANYIZHAIQUANA"],["360014","GDTYZQC","光大添益债券C","债券型","GUANGDATIANYIZHAIQUANC"],["360016","GDBDXHYLDHH","光大保德信行业轮动混合","混合型","GUANGDAHANGYELUNDONGHUNHE"],["360019","GDTTYLCZQA","光大添天盈理财债券A","理财型","GUANGDATIANTIANYINGLICAIZHAIQUANA"],["360020","GDTTYLCZQB","光大添天盈理财债券B","理财型","GUANGDATIANTIANYINGLICAIZHAIQUANB"],["370010","STHBA","上投货币A","货币型","SHANGTOUHUOBIA"],["370011","STHBB","上投货币B","货币型","SHANGTOUMOGENHUOBIB"],["370021","STFHTLZQA","上投分红添利债券A","债券型","SHANGTOUFENHONGTIANLIZHAIQUANA"],["370022","STFHTLZQB","上投分红添利债券B","债券型","SHANGTOUFENHONGTIANLIZHAIQUANB"],["370023","STZZXFZS","上投中证消费指数","股票指数","SHANGTOUZHONGZHENGXIAOFEIZHISHU"],["370024","STMGHXYXHH","上投摩根核心优选混合","混合型","SHANGTOUMOGENHEXINYOUXUANHUNHE"],["370025","STLDTLZQA","上投轮动添利债券A","债券型","SHANGTOULUNDONGTIANLIZHAIQUANA"],["370026","STLDTLZQC","上投轮动添利债券C","债券型","SHANGTOULUNDONGTIANLIZHAIQUANC"],["370027","STMGZX30HH","上投摩根智选30混合","混合型","SHANGTOUMOGENZHIXUAN30HUNHE"],["371020","STCZZQA","上投纯债债券A","债券型","SHANGTOUCHUNZHAIZHAIQUANA"],["371120","STCZZQB","上投纯债债券B","债券型","SHANGTOUCHUNZHAIZHAIQUANB"],["372010","STQHZQA","上投强化债券A","债券型","SHANGTOUQIANGHUAZHAIQUANA"],["372110","STQHZQB","上投强化债券B","债券型","SHANGTOUQIANGHUAZHAIQUANB"],["373010","STMGSXPHHHA","上投摩根双息平衡混合A","混合型","SHANGTOUMOGENSHUANGXIPINGHENGHUNHEA"],["373020","STSHPH","上投双核平衡","混合型","SHANGTOUSHUANGHEPINGHENG"],["375010","STZGYS","上投中国优势","混合型","SHANGTOUZHONGGUOYOUSHI"],["376510","STDPLC","上投大盘蓝筹","股票型","SHANGTOUDAPANLANCHOU"],["377010","STMGAEFHH","上投摩根阿尔法混合","混合型","SHANGTOUMOGENAERFAHUNHE"],["377016","STMGYTYSHH","上投摩根亚太优势混合","QDII","SHANGTOUMOGENYATAIYOUSHIHUNHE"],["377020","STMGNXDLHH","上投摩根内需动力混合","混合型","SHANGTOUMOGENNEIXUDONGLIHUNHE"],["377150","STMGJKPZSHHH","上投摩根健康品质生活混合","混合型","SHANGTOUMOGENJIANKANGPINZHISHENGHUOHUNHE"],["377240","STMGXXDLHHA","上投摩根新兴动力混合A","混合型","SHANGTOUMOGENXINXINGDONGLIHUNHEA"],["377530","STMGHYLDHHA","上投摩根行业轮动混合A","混合型","SHANGTOUMOGENHANGYELUNDONGHUNHEA"],["378006","STMGQQXXSCHH","上投摩根全球新兴市场混合","QDII","SHANGTOUMOGENQUANQIUXINXINGSHICHANGHUNHE"],["378010","STMGCZXFHH","上投摩根成长先锋混合","混合型","SHANGTOUMOGENCHENGZHANGXIANFENGHUNHE"],["378546","STMGQQTRZYHH","上投摩根全球天然资源混合","QDII","SHANGTOUMOGENQUANQIUTIANRANZIYUANHUNHE"],["379010","STMGZXPHH","上投摩根中小盘混合","混合型","SHANGTOUMOGENZHONGXIAOPANHUNHE"],["380001","ZYLC14TZQA","中银理财14天债券A","理财型","ZHONGYINLICAI14TIANZHAIQUANA"],["380002","ZYLC14TZQB","中银理财14天债券B","理财型","ZHONGYINLICAI14TIANZHAIQUANB"],["380005","ZYCZZQA","中银纯债债券A","债券型","ZHONGYINCHUNZHAIZHAIQUANA"],["380006","ZYCZZQC","中银纯债债券C","债券型","ZHONGYINCHUNZHAIZHAIQUANC"],["380007","ZYLC7TZQA","中银理财7天债券A","理财型","ZHONGYINLICAI7TIANZHAIQUANA"],["380008","ZYLC7TZQB","中银理财7天债券B","理财型","ZHONGYINLICAI7TIANZHAIQUANB"],["380009","ZYTLZQFQ","中银添利债券发起","债券型","ZHONGYINTIANLIZHAIQUANFAQI"],["380010","ZYLC30TZQA","中银理财30天债券A","理财型","ZHONGYINLICAI30TIANZHAIQUANA"],["380011","ZYLC30TZQB","中银理财30天债券B","理财型","ZHONGYINLICAI30TIANZHAIQUANB"],["392001","ZHHBA","中海货币A","货币型","ZHONGHAIHUOBIA"],["392002","ZHHBB","中海货币B","货币型","ZHONGHAIHUOBIB"],["393001","ZHYSJXLHPZHH","中海优势精选灵活配置混合","混合型","ZHONGHAIYOUSHIJINGXUANLINGHUOPEIZHIHUNHE"],["395001","ZHWJZQ","中海稳健债券","债券型","ZHONGHAIWENJIANZHAIQUAN"],["395011","ZHZQZQA","中海增强债券A","债券型","ZHONGHAIZENGQIANGZHAIQUANA"],["395012","ZHZQZQC","中海增强债券C","债券型","ZHONGHAIZENGQIANGZHAIQUANC"],["398001","ZHYZCZHH","中海优质成长混合","混合型","ZHONGHAIYOUZHICHENGZHANGHUNHE"],["398002","ZHYZCZHH","中海优质成长混合(后端)","混合型","ZHONGHAIYOUZHICHENGZHANGHUNHE"],["398011","ZHFHZLHH","中海分红增利混合","混合型","ZHONGHAIFENHONGZENGLIHUNHE"],["398012","ZHFHZLHH","中海分红增利混合(后端)","混合型","ZHONGHAIFENHONGZENGLIHUNHE"],["398021","ZHNYCL","中海能源策略","混合型","ZHONGHAINENGYUANCELUE"],["398031","ZHLCLH","中海蓝筹灵活","混合型","ZHONGHAILANCHOULINGHUO"],["398041","ZHLHCLHH","中海量化策略混合","混合型","ZHONGHAILIANGHUACELUEHUNHE"],["398051","ZHHBXNY","中海环保新能源","混合型","ZHONGHAIHUANBAOXINNENGYUAN"],["398061","ZHXFHH","中海消费混合","混合型","ZHONGHAIXIAOFEIHUNHE"],["399001","ZHSZ50","中海上证50","股票指数","ZHONGHAISHANGZHENG50"],["399011","ZHYLBJZTGP","中海医疗保健主题股票","股票型","ZHONGHAIYILIAOBAOJIANZHUTIGUPIAO"],["400001","DFLHH","东方龙混合","混合型","DONGFANGLONGHUNHE"],["400003","DFJX","东方精选","混合型","DONGFANGJINGXUAN"],["400004","DFJX","东方精选(后端)","混合型","DONGFANGJINGXUAN"],["400005","DFJZBHBA","东方金账簿货币A","货币型","DONGFANGJINZHANGBUHUOBIA"],["400006","DFJZBHBB","东方金账簿货币B","货币型","DONGFANGJINZHANGBUHUOBIB"],["400007","DFCLCZHH","东方策略成长混合","混合型","DONGFANGCELUECHENGZHANGHUNHE"],["400008","DFCLCZHH","东方策略成长混合(后端)","混合型","DONGFANGCELUECHENGZHANGHUNHE"],["400009","DFWJZQ","东方稳健债券","债券型","DONGFANGWENJIANZHAIQUAN"],["400011","DFHXDLHH","东方核心动力混合","混合型","DONGFANGHEXINDONGLIHUNHE"],["400012","DFHXDLHH","东方核心动力混合(后端)","混合型","DONGFANGHEXINDONGLIHUNHE"],["400013","DFBB","东方保本","保本型","DONGFANGBAOBEN"],["400015","DFZZZXP","东方增长中小盘","混合型","DONGFANGZENGZHANGZHONGXIAOPAN"],["400016","DFQHSYZQ","东方强化收益债券","债券型","DONGFANGQIANGHUASHOUYIZHAIQUAN"],["400018","DFQMLHXFHH","东方启明量化先锋基金","混合型","DONGFANGQIMINGLIANGHUAXIANFENGJIJIN"],["400020","DFAXSYBB","东方安心收益保本","保本型","DONGFANGANXINSHOUYIBAOBEN"],["400022","DFLQHHA","东方利群混合A","混合型","DONGFANGLIQUNHUNHEA"],["400023","DFDCLLHPZHHA","东方多策略灵活配置混合A","混合型","DONGFANGDUOCELUELINGHUOPEIZHIHUNHEA"],["400025","DFXXCZHH","东方新兴成长混合","混合型","DONGFANGXINXINGCHENGZHANGHUNHE"],["400027","DFSZTLZQA","东方双债添利债券A","债券型","DONGFANGSHUANGZHAITIANLIZHAIQUANA"],["400029","DFSZTLZQC","东方双债添利债券C","债券型","DONGFANGSHUANGZHAITIANLIZHAIQUANC"],["400030","DFTYZQ","东方添益债券","债券型","DONGFANGTIANYIZHAIQUAN"],["400032","DFZTJXHH","东方主题精选混合","混合型","DONGFANGZHUTIJINGXUANHUNHE"],["410001","HFJZLYX","华富竞争力优选","混合型","HUAFUJINGZHENGLIYOUXUAN"],["410002","HFHB","华富货币","货币型","HUAFUHUOBI"],["410003","HFCZQSHH","华富成长趋势混合","混合型","HUAFUCHENGZHANGQUSHIHUNHE"],["410004","HFZQZQA","华富增强债券A","债券型","HUAFUZENGQIANGZHAIQUANA"],["410005","HFZQZQB","华富增强债券B","债券型","HUAFUZENGQIANGZHAIQUANB"],["410006","HFCLJX","华富策略精选","混合型","HUAFUCELUEJINGXUAN"],["410007","HFJZZZ","华富价值增长","混合型","HUAFUJIAZHIZENGZHANG"],["410008","HFZZ100","华富中证100","股票指数","HUAFUZHONGZHENG100"],["410009","HFLZSMLHH","华富量子生命力混合","混合型","HUAFULIANGZISHENGMINGLIHUNHE"],["410010","HFZXBZSZQ","华富中小板指数增强","股票指数","HUAFUZHONGXIAOBANZHISHUZENGQIANG"],["420001","THJX","天弘精选","混合型","TIANHONGJINGXUAN"],["420002","THYLZQA","天弘永利债券A","债券型","TIANHONGYONGLIZHAIQUANA"],["420003","THYDJZCZHH","天弘永定价值成长混合","混合型","TIANHONGYONGDINGJIAZHICHENGZHANGHUNHE"],["420005","THZQCLHH","天弘周期策略混合","混合型","TIANHONGZHOUQICELUEHUNHE"],["420006","THXJGJHBA","天弘现金管家货币A","货币型","TIANHONGXIANJINGUANJIAHUOBIA"],["420008","THZQFQSA","天弘债券发起式A","债券型","TIANHONGZHAIQUANFAQISHIA"],["420009","THAKYLHH","天弘安康养老混合","混合型","TIANHONGANKANGYANGLAOHUNHE"],["420102","THYLZQB","天弘永利债券B","债券型","TIANHONGYONGLIZHAIQUANB"],["420106","THXJGJHBB","天弘现金管家货币B","货币型","TIANHONGXIANJINGUANJIAHUOBIB"],["420108","THZQFQSB","天弘债券发起式B","债券型","TIANHONGZHAIQUANFAQISHIB"],["450001","GFZGSY","国富中国收益","混合型","GUOFUZHONGGUOSHOUYI"],["450002","GFDXSZHH","国富弹性市值混合","混合型","GUOFUTANXINGSHIZHIHUNHE"],["450003","GFQLZHHHA","国富潜力组合混合A","混合型","GUOFUQIANLIZUHEHUNHEA"],["450004","GFSHJZHH","国富深化价值混合","混合型","GUOFUSHENHUAJIAZHIHUNHE"],["450005","GFQHZQA","国富强化债券A","债券型","GUOFUQIANGHUAZHAIQUANA"],["450006","GFQHZQC","国富强化债券C","债券型","GUOFUQIANGHUAZHAIQUANC"],["450007","GFCZDLHH","国富成长动力混合","混合型","GUOFUCHENGZHANGDONGLIHUNHE"],["450008","GFHS300","国富沪深300","股票指数","GUOFUHUSHEN300"],["450009","GFZXP","国富中小盘","股票型","GUOFUZHONGXIAOPAN"],["450010","GFCLHBHH","国富策略回报混合","混合型","GUOFUCELUEHUIBAOHUNHE"],["450011","GFYJJXHH","国富研究精选混合","混合型","GUOFUYANJIUJINGXUANHUNHE"],["450018","GFHJXYZQA","国富恒久信用债券A","债券型","GUOFUHENGJIUXINYONGZHAIQUANA"],["450019","GFHJXYZQC","国富恒久信用债券C","债券型","GUOFUHENGJIUXINYONGZHAIQUANC"],["457001","GFYZJHGP","国富亚洲机会股票","QDII","GUOFUYAZHOUJIHUIGUPIAO"],["460001","HTBRSSZGHH","华泰柏瑞盛世中国混合","混合型","HUATAIBAIRUISHENGSHIZHONGGUOHUNHE"],["460002","HTBRJJCZHHA","华泰柏瑞积极成长混合A","混合型","HUATAIBAIRUIJIJICHENGZHANGHUNHEA"],["460003","HTBRWBZLZQB","华泰柏瑞稳本增利债券B","债券型","HUATAIBAIRUIWENBENZENGLIZHAIQUANB"],["460005","HTBRJZZCHH","华泰柏瑞价值增长混合","混合型","HUATAIBAIRUIJIAZHIZENGZHANGHUNHE"],["460006","HTBRHBA","华泰柏瑞货币A","货币型","HUATAIBAIRUIHUOBIA"],["460007","HTBRHYLXHH","华泰柏瑞行业领先混合","混合型","HUATAIBAIRUIHANGYELINGXIANHUNHE"],["460008","HTBRWJSYZQA","华泰柏瑞稳健收益债券A","债券型","HUATAIBAIRUIWENJIANSHOUYIZHAIQUANA"],["460009","HTBRLHXHHH","华泰柏瑞量化先行混合","混合型","HUATAIBAIRUILIANGHUAXIANXINGHUNHE"],["460010","HTBRYZLDQYHH","华泰柏瑞亚洲领导企业混合","QDII","HUATAIBAIRUIYAZHOULINGDAOQIYEHUNHE"],["460106","HTBRHBB","华泰柏瑞货币B","货币型","HUATAIBAIRUIHUOBIB"],["460108","HTBRWJSYZQC","华泰柏瑞稳健收益债券C","债券型","HUATAIBAIRUIWENJIANSHOUYIZHAIQUANC"],["460220","HTBRZXPLJ","华泰柏瑞中小盘联接","联接基金","HUATAIBAIRUIZHONGXIAOPANLIANJIE"],["460300","HTBRHS300LJ","华泰柏瑞沪深300联接","联接基金","HUATAIBAIRUIHUSHEN300LIANJIE"],["470006","HTFYYBJHH","汇添富医药保健混合","混合型","HUITIANFUYIYAOBAOJIANHUNHE"],["470007","HTFSZZZ","汇添富上证综指","股票指数","HUITIANFUSHANGZHENGZENGZHI"],["470008","HTFCLHBHH","汇添富策略回报混合","混合型","HUITIANFUCELUEHUIBAOHUNHE"],["470009","HTFMYHLHH","汇添富民营活力混合","混合型","HUITIANFUMINYINGHUOLIHUNHE"],["470010","HTFDYSYZQA","汇添富多元收益债券A","债券型","HUITIANFUDUOYUANSHOUYIZHAIQUANA"],["470011","HTFDYSYZQC","汇添富多元收益债券C","债券型","HUITIANFUDUOYUANSHOUYIZHAIQUANC"],["470014","HTFLC14TZQA","汇添富理财14天债券A","理财型","HUITIANFULICAI14TIANZHAIQUANA"],["470018","HTFSLZQA","汇添富双利债券A","债券型","HUITIANFUSHUANGLIZHAIQUANA"],["470021","HTFYXHBLHPZHHA","汇添富优选回报灵活配置混合A","混合型","HUITIANFUYOUXUANHUIBAOLINGHUOPEIZHIHUNHEA"],["470028","HTFSHZRHH","汇添富社会责任混合","混合型","HUITIANFUSHEHUIZERENHUNHE"],["470030","HTFLC30TZQA","汇添富理财30天债券A","理财型","HUITIANFULICAI30TIANZHAIQUANA"],["470058","HTFKZHZQA","汇添富可转换债券A","债券型","HUITIANFUKEZHUANHUANZHAIQUANA"],["470059","HTFKZHZQC","汇添富可转换债券C","债券型","HUITIANFUKEZHUANHUANZHAIQUANC"],["470060","HTFLC60TZQA","汇添富理财60天债券A","理财型","HUITIANFULICAI60TIANZHAIQUANA"],["470068","HTFSZ300ETFLJ","汇添富深证300ETF联接","联接基金","HUITIANFUSHENZHENG300ETFLIANJIE"],["470078","HTFZQZQC","汇添富增强债券C","债券型","HUITIANFUZENGQIANGZHAIQUANC"],["470088","HTF6YHTLDKZA","汇添富6月红添利定开债A","定开债券","HUITIANFU6YUEHONGTIANLIDINGKAIZHAIA"],["470089","HTF6YHTLDKZC","汇添富6月红添利定开债C","定开债券","HUITIANFU6YUEHONGTIANLIDINGKAIZHAIC"],["470098","HTFNXTZHH","汇添富逆向投资混合","混合型","HUITIANFUNIXIANGTOUZIHUNHE"],["470888","HTFXGHHQDII","汇添富香港混合(QDII)","QDII","HUITIANFUXIANGGANGHUNHE(QDII)"],["471007","HTFLC7TZQA","汇添富理财7天债券A","理财型","HUITIANFULICAI7TIANZHAIQUANA"],["471014","HTFLC14TZQB","汇添富理财14天债券B","理财型","HUITIANFULICAI14TIANZHAIQUANB"],["471030","HTFLC30TZQB","汇添富理财30天债券B","理财型","HUITIANFULICAI30TIANZHAIQUANB"],["471060","HTFLC60TZQB","汇添富理财60天债券B","理财型","HUITIANFULICAI60TIANZHAIQUANB"],["472007","HTFLC7TZQB","汇添富理财7天债券B","理财型","HUITIANFULICAI7TIANZHAIQUANB"],["481001","GYHXJZHHA","工银核心价值混合A","混合型","GONGYINHEXINJIAZHIHUNHEA"],["481004","GYWJCZHHA","工银稳健成长混合A","混合型","GONGYINWENJIANCHENGZHANGHUNHEA"],["481006","GYHLHH","工银红利混合","混合型","GONGYINHONGLIHUNHE"],["481008","GYDPLCHH","工银大盘蓝筹混合","混合型","GONGYINDAPANLANCHOUHUNHE"],["481009","GYHS300","工银沪深300","股票指数","GONGYINHUSHEN300"],["481010","GYZXPHH","工银中小盘混合","混合型","GONGYINZHONGXIAOPANHUNHE"],["481012","GYSZHLLJ","工银深证红利联接","联接基金","HONGYINSHENZHENGHONGLILIANJIE"],["481013","GYXFFWHH","工银消费服务混合","混合型","GONGYINXIAOFEIFUWUHUNHE"],["481015","GYZTCLHH","工银主题策略混合","混合型","GONGYINZHUTICELUEHUNHE"],["481017","GYLHCLHH","工银量化策略混合","混合型","GONGYINLIANGHUACELUEHUNHE"],["482002","GYHB","工银货币","货币型","GONGYINHUOBI"],["483003","GYJXPHHH","工银精选平衡混合","混合型","GONGYINJINGXUANPINGHENGHUNHE"],["485005","GYZQSYZQB","工银增强收益债券B","债券型","GONGYINZENGQIANGSHOUYIZHAIQUANB"],["485007","GYXYTLZQB","工银信用添利债券B","债券型","GONGYINXINYONGTIANLIZHAIQUANB"],["485011","GYSLZQB","工银双利债券B","债券型","GONGYINSHUANGLIZHAIQUANB"],["485014","GYTYZQB","工银添颐债券B","债券型","GONGYINTIANYIZHAIQUANB"],["485018","GY7TLCZQB","工银7天理财债券B","理财型","GONGYIN7TIANLICAIZHAIQUANB"],["485019","GYXYCZZQB","工银信用纯债债券B","债券型","GONGYINXINYONGCHUNZHAIZHAIQUANB"],["485020","GY14TLCZQFQB","工银14天理财债券发起B","理财型","GONGYIN14TIANLICAIZHAIQUANFAQIB"],["485022","GY60TLCZQB","工银60天理财债券B","理财型","GONGYIN60TIANLICAIZHAIQUANB"],["485105","GYZQSYZQA","工银增强收益债券A","债券型","GONGYINZENGQIANGSHOUYIZHAIQUANA"],["485107","GYXYTLZQA","工银信用添利债券A","债券型","GONGYINXINYONGTIANLIZHAIQUANA"],["485111","GYSLZQA","工银双利债券A","债券型","GONGYINSHUANGLIZHAIQUANA"],["485114","GYTYZQA","工银添颐债券A","债券型","GONGYINTIANYIZHAIQUANA"],["485118","GY7TLCZQA","工银7天理财债券A","理财型","GONGYIN7TIANLICAIZHAIQUANA"],["485119","GYXYCZZQA","工银信用纯债债券A","债券型","GONGYINXINYONGCHUNZHAIZHAIQUANA"],["485120","GY14TLCZQFQA","工银14天理财债券发起A","理财型","GONGYIN14TIANLICAIZHAIQUANFAQIA"],["485122","GY60TLCZQA","工银60天理财债券A","理财型","GONGYIN60TIANLICAIZHAIQUANA"],["485205","GYZQSYZQA","工银增强收益债券A(后端)","债券型","GONGYINZENGQIANGSHOUYIZHAIQUANA"],["486001","GYQQPZ","工银全球配置","QDII","GONGYINQUANQIUPEIZHI"],["486002","GYQQJX","工银全球精选","QDII","GONGYINQUANQIUJINGXUAN"],["487016","GYBBHHA","工银保本混合A","保本型","GONGYINBAOBENHUNHEA"],["487021","GYYZJXHH","工银优质精选混合","混合型","GONGYINYOUZHIJINGXUANHUNHE"],["500058","JJYF","基金银丰","封闭式","JIJINYINFENG"],["501000","GJXXLHPZLOF","国金鑫新灵活配置(LOF)","混合型","GUOJINXINXINLINGHUOPEIZHILOF"],["501001","CTDCLJXHHLOF","财通多策略精选混合(LOF)","混合型","CAITONGDUOCELUEJINGXUANHUNHELOF"],["501002","CXZZNYHLZSLOF","长信中证能源互联指数(LOF)","股票指数","CHANGXINZHONGZHENGNENGYUANHULIANZHISHULOF"],["501003","CXZZSHGGFZZTZS","长信中证上海改革发展主题指数","股票指数","CHANGXINZHONGZHENGSHANGHAIGAIGEFAZHANZHUTIZHISHU"],["501005","HTFZZJZYLZSA","汇添富中证精准医疗指数A","股票指数","HUITIANFUZHONGZHENGJINGZHUNYILIAOZHISHUA"],["501006","HTFZZJZYLZSC","汇添富中证精准医疗指数C","股票指数","HUITIANFUZHONGZHENGJINGZHUNYILIAOZHISHUC"],["501007","HTFZZHLWYLZSA","汇添富中证互联网医疗指数A","股票指数","HUITIANFUZHONGZHENGHULIANWANGYILIAOZHISHUA"],["501008","HTFZZHLWYLZSC","汇添富中证互联网医疗指数C","股票指数","HUITIANFUZHONGZHENGHULIANWANGYILIAOZHISHUC"],["501009","HTFZZSWKJZSA","汇添富中证生物科技指数A","股票指数","HUITIANFUZHONGZHENGSHENGWUKEJIZHISHUA"],["501010","HTFZZSWKJZSC","汇添富中证生物科技指数C","股票指数","HUITIANFUZHONGZHENGSHENGWUKEJIZHISHUC"],["501011","HTFZZZYZSLOFA","汇添富中证中药指数(LOF)A","股票指数","HUITIANFUZHONGZHENGZHONGYAOZHISHULOFA"],["501012","HTFZZZYZSLOFC","汇添富中证中药指数(LOF)C","股票指数","HUITIANFUZHONGZHENGZHONGYAOZHISHULOFC"],["501015","CTDCLSJHH","财通多策略升级混合","混合型","CAITONGDUOCELUESHENGJIHUNHE"],["501016","GTZZSWZQHYZS","国泰中证申万证券行业指数","股票指数","GUOTAIZHONGZHENGSHENWANZHENGQUANHANGYEZHISHU"],["501017","GTRFDZLHPZHH","国泰融丰定增灵活配置混合","混合型","GUOTAIRONGFENGDINGZENGLINGHUOPEIZHIHUNHE"],["501018","NFYY","南方原油","QDII","NANFANGYUANYOU"],["501019","GTGZHTJGZS","国泰国证航天军工指数","股票指数","GUOTAIGUOZHENGHANGTIANJUNGONGZHISHU"],["501020","GTZZGYQYGGZS","国泰中证国有企业改革指数","股票指数","GUOTAIZHONGZHENGGUOYOUQIYEGAIGEZHISHU"],["501021","HBXYXGZGZXP","华宝兴业香港中国中小盘","QDII-指数","HUABAOXINGYEXIANGGANGZHONGGUOZHONGXIAOPAN"],["501022","YHXSDZHH","银华鑫盛定增混合","混合型","YINHUAXINSHENGDINGZENGHUNHE"],["501023","PHXGZXQYZSLOF","鹏华香港中小企业指数LOF","股票指数","PENGHUAXIANGGANGZHONGXIAOQIYEZHISHULOF"],["501025","PHXGYHZSLOF","鹏华香港银行指数(LOF)","股票指数","PENGHUAXIANGGANGYINHANGZHISHULOF"],["501026","CTDCLFXHH","财通多策略福享混合","混合型","CAITONGDUOCELUEFUXIANGHUNHE"],["501027","GTRXDZLHPZHH","国泰融信定增灵活配置混合","混合型","GUOTAIRONGXINDINGZENGLINGHUOPEIZHIHUNHE"],["501028","CTDCLFRDKHH","财通多策略福瑞定开混合","混合型","CAITONGDUOCELUEFURUIDINGKAIHUNHE"],["501029","HBBPZGAGHLJHZS","华宝标普中国A股红利机会指数","股票指数","HUABAOBIAOPUZHONGGUOAGUHONGLIJIHUIZHISHU"],["501030","HTFZZHJZLZSA","汇添富中证环境治理指数A","股票指数","HUITIANFUZHONGZHENGHUANJINGZHILIZHISHUA"],["501031","HTFZZHJZLZSC","汇添富中证环境治理指数C","股票指数","HUITIANFUZHONGZHENGHUANJINGZHILIZHISHUC"],["501032","CTFSDZDKHH","财通福盛定增定开混合","混合型","CAITONGFUSHENGDINGZENGDINGKAIHUNHE"],["501033","YHHADQKFHH","银华惠安定期开放混合","混合型","YINHUAHUIANDINGQIKAIFANGHUNHE"],["501050","HXSZ50AHYXZS","华夏上证50AH优选指数","股票指数","HUAXIASHANGZHENG50AHYOUXUANZHISHU"],["501100","BSAKDKZLOF","博时安康定开债(LOF)","定开债券","BOSHIANKANGDINGKAIZHAILOF"],["501300","HFTQQSYZQRMB","海富通全球收益债券人民币","QDII","HAIFUTONGQUANQIUSHOUYIZHAIQUANRENMINBI"],["501301","HBXYXGDP","华宝兴业香港大盘","股票指数","HUABAOXINGYEXIANGGANGDAPAN"],["502000","XBLDZZ500DQZFJ","西部利得中证500等权重分级","股票指数","XIBULIDEZHONGZHENG500DENGQUANZHONGFENJI"],["502001","XBLDZZ500DQZFJA","西部利得中证500等权重分级A","固定收益","XIBULIDEZHONGZHENG500DENGQUANZHONGFENJIA"],["502002","XBLDZZ500DQZFJB","西部利得中证500等权重分级B","分级杠杆","XIBULIDEZHONGZHENG500DENGQUANZHONGFENJIB"],["502003","YFDJGFJ","易方达军工分级","股票指数","YIFANGDAJUNGONGFENJI"],["502004","YFDJGFJA","易方达军工分级A","固定收益","YIFANGDAJUNGONGFENJIA"],["502005","YFDJGFJB","易方达军工分级B","分级杠杆","YIFANGDAJUNGONGFENJIB"],["502006","YFDGQGGZSFJ","易方达国企改革指数分级","股票指数","YIFANGDAGUOQIGAIGEZHISHUFENJI"],["502007","YFDGQGGZSFJA","易方达国企改革指数分级A","固定收益","YIFANGDAGUOQIGAIGEZHISHUFENJIA"],["502008","YFDGQGGZSFJB","易方达国企改革指数分级B","分级杠杆","YIFANGDAGUOQIGAIGEZHISHUFENJIB"],["502010","YFDZQGSFJ","易方达证券公司分级","股票指数","YIFANGDAZHENGQUANGONGSIFENJI"],["502011","YFDZQGSFJA","易方达证券公司分级A","固定收益","YIFANGDAZHENGQUANGONGSIFENJIA"],["502012","YFDZQGSFJB","易方达证券公司分级B","分级杠杆","YIFANGDAZHENGQUANGONGSIFENJIB"],["502013","CSZZSWYDYLFJ","长盛中证申万一带一路分级","股票指数","CHANGSHENGZHONGZHENGSHENWANYIDAIYILUFENJI"],["502014","CSZZSWYDYLFJA","长盛中证申万一带一路分级A","固定收益","CHANGSHENGZHONGZHENGSHENWANYIDAIYILUFENJIA"],["502015","CSZZSWYDYLFJB","长盛中证申万一带一路分级B","分级杠杆","CHANGSHENGZHONGZHENGSHENWANYIDAIYILUFENJIB"],["502016","CXZZYDYLZTZSFJ","长信中证一带一路主题指数分级","股票指数","CHANGXINZHONGZHENGYIDAIYILUZHUTIZHISHUFENJI"],["502017","CXZZYDYLZSFJA","长信中证一带一路指数分级A","固定收益","CHANGXINZHONGZHENGYIDAIYILUZHISHUFENJIA"],["502018","CXZZYDYLZSFJB","长信中证一带一路指数分级B","分级杠杆","CHANGXINZHONGZHENGYIDAIYILUZHISHUFENJIB"],["502020","GJSZ50FJ","国金上证50分级","股票指数","GUOJINSHANGZHENG50FENJI"],["502021","GJSZ50FJA","国金上证50分级A","固定收益","GUOJINSHANGZHENG50FENJIA"],["502022","GJSZ50FJB","国金上证50分级B","分级杠杆","GUOJINSHANGZHENG50FENJIB"],["502023","PHGTFJ","鹏华钢铁分级","股票指数","PENGHUAGANGTIEFENJI"],["502024","PHGTFJA","鹏华钢铁分级A","固定收益","PENGHUAGANGTIEFENJIA"],["502025","PHGTFJB","鹏华钢铁分级B","分级杠杆","PENGHUAGANGTIEFENJIB"],["502026","PHXSLFJ","鹏华新丝路分级","股票指数","PENGHUAXINSILUFENJI"],["502027","PHXSLFJA","鹏华新丝路分级A","固定收益","PENGHUAXINSILUFENJIA"],["502028","PHXSLFJB","鹏华新丝路分级B","分级杠杆","PENGHUAXINSILUFENJIB"],["502030","ZHZZGTCYZSFJ","中海中证高铁产业指数分级","股票指数","ZHONGHAIZHONGZHENGGAOTIECHANYEZHISHUFENJI"],["502031","ZHZZGTCYZSFJA","中海中证高铁产业指数分级A","固定收益","ZHONGHAIZHONGZHENGGAOTIECHANYEZHISHUFENJIA"],["502032","ZHZZGTCYZSFJB","中海中证高铁产业指数分级B","分级杠杆","ZHONGHAIZHONGZHENGGAOTIECHANYEZHISHUFENJIB"],["502036","DCZZHLWJRZSFJ","大成中证互联网金融指数分级","股票指数","DACHENGZHONGZHENGHULIANWANGJINRONGZHISHUFENJI"],["502037","DCZZHLWJRZSFJA","大成中证互联网金融指数分级A","固定收益","DACHENGZHONGZHENGHULIANWANGJINRONGZHISHUFENJIA"],["502038","DCZZHLWJRZSFJB","大成中证互联网金融指数分级B","分级杠杆","DACHENGZHONGZHENGHULIANWANGJINRONGZHISHUFENJIB"],["502040","CSSZ50ZSFJ","长盛上证50指数分级","股票指数","CHANGSHENGSHANGZHENG50ZHISHUFENJI"],["502041","CSSZ50ZSFJA","长盛上证50指数分级A","固定收益","CHANGSHENGSHANGZHENG50ZHISHUFENJIA"],["502042","CSSZ50ZSFJB","长盛上证50指数分级B","分级杠杆","CHANGSHENGSHANGZHENG50ZHISHUFENJIB"],["502048","YFDSZ50ZSFJ","易方达上证50指数分级","股票指数","YIFANGDASHANGZHENG50ZHISHUFENJI"],["502049","YFDSZ50ZSFJA","易方达上证50指数分级A","固定收益","YIFANGDASHANGZHENG50ZHISHUFENJIA"],["502050","YFDSZ50ZSFJB","易方达上证50指数分级B","分级杠杆","YIFANGDASHANGZHENG50ZHISHUFENJIB"],["502053","CSZZZQGSFJ","长盛中证证券公司分级","股票指数","CHANGSHENGZHONGZHENGZHENGQUANGONGSIFENJI"],["502054","CSZZZQGSFJA","长盛中证证券公司分级A","固定收益","CHANGSHENGZHONGZHENGZHENGQUANGONGSIFENJIA"],["502055","CSZZZQGSFJB","长盛中证证券公司分级B","分级杠杆","CHANGSHENGZHONGZHENGZHENGQUANGONGSIFENJIB"],["502056","GFYLZSFJ","广发医疗指数分级","股票指数","GUANGFAYILIAOZHISHUFENJI"],["502057","GFYLZSFJA","广发医疗指数分级A","固定收益","GUANGFAYILIAOZHISHUFENJIA"],["502058","GFYLZSFJB","广发医疗指数分级B","分级杠杆","GUANGFAYILIAOZHISHUFENJIB"],["505888","JSYH","嘉实元和","混合型","JIASHIYUANHE"],["510010","JYSZ180ZLETF","交银上证180治理ETF","ETF-场内","JIAOYINSHANGZHENG180ZHILIETF"],["510020","BSSZCDPETF","博时上证超大盘ETF","ETF-场内","BOSHISHANGZHENGCHAODAPANETF"],["510030","HBSZ180JZETF","华宝上证180价值ETF","ETF-场内","HUABAOSHANGZHENG180JIAZHIETF"],["510050","HXSZ50ETF","华夏上证50ETF","ETF-场内","HUAXIASHANGZHENG50ETF"],["510060","GYSZYQ50ETF","工银上证央企50ETF","ETF-场内","GONGYINSHANGZHENGYANGQI50ETF"],["510070","PHSZMQ50ETF","鹏华上证民企50ETF","ETF-场内","PENGHUASHANGZHENGMINQI50ETF"],["510080","CSQZZSQZ","长盛全债指数强债","债券指数","CHANGSHENGQUANZHAIZHISHUQIANGZHAI"],["510081","CSDTJX","长盛动态精选","混合型","CHANGSHENGDONGTAIJINGXUAN"],["510090","JXSZZRETF","建信上证责任ETF","ETF-场内","JIANXINSHANGZHENGZERENETF"],["510110","HFTSZZQETF","海富通上证周期ETF","ETF-场内","HAIFUTONGSHANGZHENGZHOUQIETF"],["510120","HFTSZFZQETF","海富通上证非周期ETF","ETF-场内","HAIFUTONGSHANGZHENGFEIZHOUQIETF"],["510130","YFDSZZPETF","易方达上证中盘ETF","ETF-场内","YIFANGDASHANGZHENGZHONGPANETF"],["510150","ZSSZXF80ETF","招商上证消费80ETF","ETF-场内","ZHAOSHANGSHANGZHENGXIAOFEI80ETF"],["510160","NFZZXKCYETF","南方中证小康产业ETF","ETF-场内","NANFANGZHONGZHENGXIAOKANGCHANYEETF"],["510170","GLASZSPETF","国联安上证商品ETF","ETF-场内","GUOLIANANSHANGZHENGSHANGPINETF"],["510180","HASZ180ETF","华安上证180ETF","ETF-场内","HUAANSHANGZHENG180ETF"],["510190","HASZLTETF","华安上证龙头ETF","ETF-场内","HUAANSHANGZHENGLONGTOUETF"],["510210","FGSZZZETF","富国上证综指ETF","ETF-场内","FUGUOSHANGZHENGZENGZHIETF"],["510220","HTBRZXPETF","华泰柏瑞中小盘ETF","ETF-场内","HUATAIBAIRUIZHONGXIAOPANETF"],["510230","GTSZ180JRETF","国泰上证180金融ETF","ETF-场内","GUOTAISHANGZHENG180JINRONGETF"],["510260","NASZXXETF","诺安上证新兴ETF","ETF-场内","NUOANSHANGZHENGXINXINGETF"],["510270","ZYSZGQ100ETF","中银上证国企100ETF","ETF-场内","ZHONGYINSHANGZHENGGUOQI100ETF"],["510280","HBSZ180CZETF","华宝上证180成长ETF","ETF-场内","HUABAOSHANGZHENG180CHENGZHANGETF"],["510290","NFSZ380ETF","南方上证380ETF","ETF-场内","NANFANGSHANGZHENG380ETF"],["510300","HTBRHS300ETF","华泰柏瑞沪深300ETF","ETF-场内","HUATAIBAIRUIHUSHEN300ETF"],["510310","YFDHS300ETF","易方达沪深300ETF","ETF-场内","YIFANGDAHUSHEN300ETF"],["510330","HXHS300ETF","华夏沪深300ETF","ETF-场内","HUAXIAHUSHEN300ETF"],["510360","GFHS300ETF","广发沪深300ETF","ETF-场内","GUANGFAHUSHEN300ETF"],["510410","bsszzrzyetf","博时上证自然资源ETF","ETF-场内","BOSHISHANGZHENGZIRANZIYUANETF"],["510420","JSCCSZ180ETF","景顺长城上证180ETF","ETF-场内","JINGSHUNCHANGCHENGSHANGZHENG180ETF"],["510430","YHSZ50DQETF","银华上证50等权ETF","ETF-场内","YINHUASHANGZHENG50DENGQUANETF"],["510440","ZZ500HSETF","中证500沪市ETF","ETF-场内","ZHONGZHENG500HUSHIETF"],["510500","NFZZ500ETF","南方中证500ETF","ETF-场内","NANFANGZHONGZHENG500ETF"],["510510","GFZZ500ETF","广发中证500ETF","ETF-场内","GUANGFAZHONGZHENG500ETF"],["510520","NAZZ500ETF","诺安中证500ETF","ETF-场内","NUOANZHONGZHENG500ETF"],["510560","GSABZZ500ETF","国寿安保中证500ETF","ETF-场内","GUOSHOUANBAOZHONGZHENG500ETF"],["510580","YFDZZ500ETF","易方达中证500ETF","ETF-场内","YIFANGDAZHONGZHENG500ETF"],["510630","SZZYXFETF","上证主要消费ETF","ETF-场内","SHANGZHENGZHUYAOXIAOFEIETF"],["510650","SZJRDCETF","上证金融地产ETF","ETF-场内","SHANGZHENGJINRONGDECHANETF"],["510660","SZYYWSETF","上证医药卫生ETF","ETF-场内","SHANGZHENGYIYAOWEISHENGETF"],["510680","WJSZ50ETF","万家上证50ETF","ETF-场内","WANJIASHANGZHENG50ETF"],["510710","BSSZ50ETF","博时上证50ETF","ETF-场内","BOSHISHANGZHENG50ETF"],["510810","HTFZZSHGQETF","汇添富中证上海国企ETF","ETF-场内","HUITIANFUZHONGZHENGSHANGHAIGUOQIETF"],["510880","HTBRSZHLETF","华泰柏瑞上证红利ETF","ETF-场内","HUATAIBAIRUISHANGZHENGHONGLIETF"],["510900","YFDHSETF","易方达恒生ETF","QDII-ETF","YIFANGDAHENGSHENGETF"],["511010","GTSZ5NQGZETF","国泰上证5年期国债ETF","ETF-场内","GUOTAISHANGZHENG5NIANQIGUOZHAIETF"],["511080","CSQZZSQZ","长盛全债指数强债(后端)","债券指数","CHANGSHENGQUANZHAIZHISHUQIANGZHAI"],["511081","CSDTJX","长盛动态精选(后端)","混合型","CHANGSHENGDONGTAIJINGXUAN"],["511210","BSSZQZ30ETF","博时上证企债30ETF","ETF-场内","BOSHISHANGZHENGQIZHAI30ETF"],["511220","HFTSZKZYCTZETF","海富通上证可质押城投债ETF","ETF-场内","HAIFUTONGSHANGZHENGKEZHIYACHENGTOUZHAIETF"],["511230","HFTSZZQCYZETF","海富通上证周期产业债ETF","ETF-场内","HAIFUTONGSHANGZHENGZHOUQICHANYEZHAIETF"],["511600","HARRXHBH","华安日日鑫货币H","货币型","HUAANRIRIXINHUOBIH"],["511650","HXKXJYXHB","华夏快线交易型货币","货币型","HUAXIAKUAIXIANJIAOYIXINGHUOBI"],["511660","JXXJTYHBH","建信现金添益货币H","货币型","JIANXINXIANJINTIANYIHUOBIH"],["511680","AXBZJJYXHB","安信保证金交易型货币","货币型","ANXINBAOZHENGJINJIAOYIXINGHUOBI"],["511690","DCTYJYXHBE","大成添益交易型货币E","货币型","DACHENGTIANYIJIAOYIXINGHUOBIE"],["511700","PADHJYXHBE","平安大华交易型货币E","货币型","PINGANDAHUAJIAOYIXINGHUOBIE"],["511760","DBXJBE","德邦现金宝E","货币型","DEBANGXIANJINBAOE"],["511770","JYZYHBE","金鹰增益货币E","货币型","JINYINGZENGYIHUOBIE"],["511800","YFDHBE","易方达货币E","货币型","YIFANGDAHUOBIE"],["511810","NFLCJJYXHBH","南方理财金交易型货币H","货币型","NANFANGLICAIJINJIAOYIXINGHUOBIH"],["511820","PHTLJYXHBB","鹏华添利交易型货币B","货币型","PENGHUATIANLIJIAOYIXINGHUOBIB"],["511830","HTBRJYHBA","华泰柏瑞交易货币A","货币型","HUATAIBAIRUIJIAOYIHUOBIA"],["511850","ZSCFBJYXHBE","招商财富宝交易型货币E","货币型","ZHAOSHANGCAIFUBAOJIAOYIXINGHUOBIE"],["511860","BSBZJSSJYXHB","博时保证金实时交易型货币","货币型","BOSHIBAOZHENGJINSHISHIJIAOYIXINGHUOBI"],["511880","YHRLA","银华日利A","货币型","YINHUARILIA"],["511890","JSCCJYXHB","景顺长城交易型货币","货币型","JINGSHUNCHANGCHENGJIAOYIXINGHUOBI"],["511900","FGSYBJYXHBH","富国收益宝交易型货币H","货币型","FUGUOSHOUYIBAOJIAOYIXINGHUOBIH"],["511910","RTYZFHBE","融通易支付货币E","货币型","RONGTONGYIZHIFUHUOBIE"],["511920","GFHBE","广发货币E","货币型","GUANGFAHUOBIE"],["511930","ZRRRYJYXHB","中融日日盈交易型货币","货币型","ZHONGRONGRIRIYINGJIAOYIXINGHUOBI"],["511950","GFTLJYXHB","广发添利交易型货币","货币型","GUANGFATIANLIJIAOYIXINGHUOBI"],["511960","JSKXHBH","嘉实快线货币H","货币型","JIASHIKUAIXIANHUOBIH"],["511970","GSABHBE","国寿安保货币E","货币型","GUOSHOUANBAOHUOBIE"],["511980","HTFTFTHBE","汇添富添富通货币E","货币型","HUITIANFUTIANFUTONGHUOBIE"],["511990","HBXYXJTYA","华宝兴业现金添益A","货币型","HUABAOXINGYEXIANJINTIANYIA"],["512000","HBXYZZQZZQETF","华宝兴业中证全指证券ETF","ETF-场内","HUABAOXINGYEZHONGZHENGQUANZHIZHENGQUANETF"],["512010","YFDHS300YYETF","易方达沪深300医药ETF","ETF-场内","YIFANGDAHUSHEN300YIYAOETF"],["512070","YFDHS300FYETF","易方达沪深300非银ETF","ETF-场内","YIFANGDAHUSHEN300FEIYINETF"],["512100","NFZZ1000ETF","南方中证1000ETF","ETF-场内","NANFANGZHONGZHENG1000ETF"],["512120","HAZZXFYYETF","华安中证细分医药ETF","ETF-场内","HUAANZHONGZHENGXIFENYIYAOETF"],["512210","JSZZ800SPYLETF","景顺中证800食品饮料ETF","ETF-场内","JINGSHUNZHONGZHENG800SHIPINYINLIAOETF"],["512220","JSZZTMT150ETF","景顺中证TMT150ETF","ETF-场内","JINGSHUNZHONGZHENGTMT150ETF"],["512230","JSCCZZYYWSETF","景顺长城中证医药卫生ETF","ETF-场内","JINGSHUNCHANGCHENGZHONGZHENGYIYAOWEISHENGETF"],["512300","ZZ500YYWSETF","中证500医药卫生ETF","ETF-场内","ZHONGZHENG500YIYAOWEISHENGETF"],["512310","NFZZ500GYETF","南方中证500工业ETF","ETF-场内","NANFANGZHONGZHENG500GONGYEETF"],["512330","NFZZ500XXJSETF","南方中证500信息技术ETF","ETF-场内","NANFANGZHONGZHENG500XINXIJISHUETF"],["512340","NFZZ500YCLETF","南方中证500原材料ETF","ETF-场内","NANFANGZHONGZHENG500YUANCAILIAOETF"],["512500","HXZZ500ETF","华夏中证500ETF","ETF-场内","HUAXIAZHONGZHENG500ETF"],["512510","HTBRZZ500ETF","华泰柏瑞中证500ETF","ETF-场内","HUATAIBAIRUIZHONGZHENG500ETF"],["512550","JSFSZGA50ETF","嘉实富时中国A50ETF","ETF-场内","JIASHIFUSHIZHONGGUOA50ETF"],["512580","GFZZHBETF","广发中证环保ETF","ETF-场内","GUANGFAZHONGZHENGHUANBAOETF"],["512600","JSZZZYXFETF","嘉实中证主要消费ETF","ETF-场内","JIASHIZHONGZHENGZHUYAOXIAOFEIETF"],["512610","JSZZYYWSETF","嘉实中证医药卫生ETF","ETF-场内","JIASHIZHONGZHENGYIYAOWEISHENGETF"],["512640","JSZZJRDCETF","嘉实中证金融地产ETF","ETF-场内","JIASHIZHONGZHENGJINRONGDICHANETF"],["512660","GTZZJGETF","国泰中证军工ETF","ETF-场内","GUOTAIZHONGZHENGJUNGONGETF"],["512680","GFZZJGETF","广发中证军工ETF","ETF-场内","GUANGFAZHONGZHENGJUNGONGETF"],["512810","HBXYZZJGETF","华宝兴业中证军工ETF","ETF-场内","HUABAOXINGYEZHONGZHENGJUNGONGETF"],["512880","GTZZQZZQGSETF","国泰中证全指证券公司ETF","ETF-场内","GUOTAIZHONGZHENGQUANZHIZHENGQUANGONGSIETF"],["512900","NFZZQZZQETF","南方中证全指证券ETF","ETF-场内","NANFANGZHONGZHENGQUANZHIZHENGQUANETF"],["512990","MSCIZGAGETF","MSCI中国A股ETF","ETF-场内","MSCIZHONGGUOAGUETF"],["513030","HADG30(DAX)ETF","华安德国30(DAX)ETF","QDII-ETF","HUAANDEGUO30(DAX)ETF"],["513050","YFDZGHL50ETF","易方达中概互联50ETF","QDII-ETF","YIFANGDAZHONGGAIHULIAN50ETF"],["513100","GTNSDK100ETF","国泰纳斯达克100ETF","QDII-ETF","GUOTAINASIDAKE100ETF"],["513500","BSBP500ETF","博时标普500ETF","QDII-ETF","BOSHIBIAOPU500ETF"],["513600","NFHSETF","南方恒生ETF","QDII-ETF","NANFANGHENGSHENGETF"],["513660","HXHGTHSETF","华夏沪港通恒生ETF","QDII-ETF","HUAXIAHUGANGTONGHENGSHENGETF"],["518800","GTHJETF","国泰黄金ETF","ETF-场内","GUOTAIHUANGJINETF"],["518880","HAHJYETF","华安黄金易ETF","ETF-场内","HUAANHUANGJINYIETF"],["519001","YHJZYXHH","银华价值优选混合","混合型","YINHUAJIAZHIYOUXUANHUNHE"],["519002","HAAXXFHH","华安安信消费混合","混合型","HUAANANXINXIAOFEIHUNHE"],["519003","HFTSYZZ","海富通收益增长","混合型","HAIFUTONGSHOUYIZENGZHANG"],["519005","HFTGPHH","海富通股票混合","混合型","HAIFUTONGGUPIAOHUNHE"],["519007","HFTQHHB","海富通强化回报","混合型","HAIFUTONGQIANGHUAHUIBAO"],["519008","HTFYSJX","汇添富优势精选","混合型","HUITIANFUYOUSHIJINGXUAN"],["519009","HTFYSJX","汇添富优势精选(后端)","混合型","HUITIANFUYOUSHIJINGXUAN"],["519010","HTFJHZZHH","汇添富均衡增长混合(后端)","混合型","HUITIANFUJUNHENGZENGZHANGHUNHE"],["519011","HFTJX","海富通精选","混合型","HAIFUTONGJINGXUAN"],["519013","HFTFGYSHH","海富通风格优势混合","混合型","HAIFUTONGFENGGEYOUSHIHUNHE"],["519015","HFTJXEH","海富通精选二号","混合型","HAIFUTONGJINGXUANERHAO"],["519017","DCJJCZHH","大成积极成长混合","混合型","DACHENGJIJICHENGZHANGHUNHE"],["519018","HTFJHZZHH","汇添富均衡增长混合","混合型","HUITIANFUJUNHENGZENGZHANGHUNHE"],["519019","DCJYLXHH","大成景阳领先混合","混合型","DACHENGJINGYANGLINGXIANHUNHE"],["519020","GTJTPHHHA","国泰金泰平衡混合A","混合型","GUOTAIJINTAIPINGHENGHUNHEA"],["519021","GTJDJZ","国泰金鼎价值","混合型","GUOTAIJINDINGJIAZHI"],["519022","GTJTPHHHC","国泰金泰平衡混合C","混合型","GUOTAIJINTAIPINGHENGHUNHEC"],["519023","HFTWJTLZQC","海富通稳健添利债券C","债券型","HAIFUTONGWENJIANTIANLIZHAIQUANC"],["519024","HFTWJTLZA","海富通稳健添利债A","债券型","HAIFUTONGWENJIANTIANLIZHAIA"],["519025","HFTLXCZHH","海富通领先成长混合","混合型","HAIFUTONGLINGXIANCHENGZHANGHUNHE"],["519026","HFTZXPHH","海富通中小盘混合","混合型","HAIFUTONGZHONGXIAOPANHUNHE"],["519027","HFTSZZQLJ","海富通上证周期联接","联接基金","HAIFUTONGSHANGZHENGZHOUQILIANJIE"],["519029","HXPWZZ","华夏平稳增长","混合型","HUAXIAPINGWENZENGZHANG"],["519030","HFTWGZQ","海富通稳固债券","债券型","HAIFUTONGWENGUZHAIQUAN"],["519032","HFTSZFZQLJ","海富通上证非周期联接","联接基金","HAIFUTONGSHANGZHENGFEIZHOUQILIANJIE"],["519033","HFTGCDXHH","海富通国策导向混合","混合型","HAIFUTONGGUOCEDAOXIANGHUNHE"],["519034","HFTZZNDDTZS","海富通中证内地低碳指数","股票指数","HAIFUTONGZHONGZHENGNEIDIDITANZHISHU"],["519035","FGTBCXZTHH","富国天博创新主题混合","混合型","FUGUOTIANBOCHUANGXINZHUTIHUNHE"],["519036","FGTBCXZTHH","富国天博创新主题混合(后端)","混合型","FUGUOTIANBOCHUANGXINZHUTIHUNHE"],["519039","CSTDZTHH","长盛同德主题混合","混合型","CHANGSHENGTONGDEZHUTIHUNHE"],["519050","HFTYLSYHHA","海富通养老收益混合A","混合型","HAIFUTONGYANGLAOSHOUYIHUNHEA"],["519051","HFTYNDKZQA","海富通一年定开债券A","定开债券","HAIFUTONGYINIANDINGKAIZHAIA"],["519055","HFTSLZQ","海富通双利债券","债券型","HAIFUTONGSHUANGLIZHAIQUAN"],["519056","HFTNXRDHH","海富通内需热点混合","混合型","HAIFUTONGNEIXUREDIANHUNHE"],["519057","HFTSFFJZQA","海富通双福分级债券A","固定收益","HAIFUTONGSHUANGFUFENJIZHAIQUANA"],["519058","HFTSFFJZQB","海富通双福分级债券B","分级杠杆","HAIFUTONGSHUANGFUFENJIZHAIQUANB"],["519059","HFTSFFJZQ","海富通双福分级债券","债券型","HAIFUTONGSHUANGFUFENJIZHAIQUAN"],["519060","HFTCZZQC","海富通纯债债券C","债券型","HAIFUTONGCHUNZHAIZHAIQUANC"],["519061","HFTCZZQA","海富通纯债债券A","债券型","HAIFUTONGCHUNZHAIZHAIQUANA"],["519062","HFTAEFDC","海富通阿尔法对冲","混合型","HAIFUTONGAERFADUICHONG"],["519066","HTFLCWJ","汇添富蓝筹稳健","混合型","HUITIANFULANCHOUWENJIAN"],["519067","HTFLCWJ","汇添富蓝筹稳健(后端)","混合型","HUITIANFULANCHOUWENJIAN"],["519068","HTFCZJDHH","汇添富成长焦点混合","混合型","HUITIANFUCHENGZHANGJIAODIANHUNHE"],["519069","HTFJZJXHH","汇添富价值精选混合","混合型","HUITIANFUJIAZHIJINGXUANHUNHE"],["519070","HTFJZJXHH","汇添富价值精选混合(后端)","混合型","HUITIANFUJIAZHIJINGXUANHUNHE"],["519071","HTFCZJDHH","汇添富成长焦点混合(后端)","混合型","HUITIANFUCHENGZHANGJIAODIANHUNHE"],["519078","HTFZQSYZQA","汇添富增强收益债券A","债券型","HUITIANFUZENGQIANGSHOUYIZHAIQUANA"],["519087","XHYXFHHH","新华优选分红混合","混合型","XINHUAYOUXUANFENHONGHUNHE"],["519088","XHYXFHHH","新华优选分红混合(后端)","混合型","XINHUAYOUXUANFENHONGHUNHE"],["519089","XHYXCZHH","新华优选成长混合","混合型","XINHUAYOUXUANCHENGZHANGHUNHE"],["519091","XHFZYYSHH","新华泛资源优势混合","混合型","XINHUAFANZIYUANYOUSHIHUNHE"],["519093","XHZSPZQYHH","新华钻石品质企业混合","混合型","XINHUAZUANSHIPINZHIQIYEHUNHE"],["519095","XHHYZQLHHH","新华行业周期轮换混合","混合型","XINHUAHANGYEZHOUQILUNHUANHUNHE"],["519097","XHZXSZYXHH","新华中小市值优选混合","混合型","XINHUAZHONGXIAOSHIZHIYOUXUANHUNHE"],["519099","XHLHZTHH","新华灵活主题混合","混合型","XINHUALINGHUOZHUTIHUNHE"],["519100","CSZZ100","长盛中证100","股票指数","CHANGSHENGZHONGZHENG100"],["519110","PYASJZCZHHA","浦银安盛价值成长混合A","混合型","PUYINANSHENGJIAZHICHENGZHANGHUNHEA"],["519111","PYASYHSYZQA","浦银安盛优化收益债券A","债券型","PUYINANSHENGYOUHUASHOUYIZHAIQUANA"],["519112","PYSYC","浦银收益C","债券型","PUYINSHOUYIC"],["519113","PYJZSH","浦银精致生活","混合型","PUYINJINGZHISHENGHUO"],["519115","PYASHLJXHH","浦银安盛红利精选混合","混合型","PUYINANSHENGHONGLIJINGXUANHUNHE"],["519116","PYHS300ZQ","浦银沪深300增强","股票指数","PUYINHUSHEN300ZENGQIANG"],["519117","PYASJBM400ZS","浦银安盛基本面400指数","股票指数","PUYINANSHENGJIBENMIAN400ZHISHU"],["519118","PYXFA","浦银幸福A","定开债券","PUYINXINGFUA"],["519119","PYXFB","浦银幸福B","定开债券","PUYINXINGFUB"],["519120","PYZLXXCYHH","浦银战略新兴产业混合","混合型","PUYINZHANLUEXINXINGCHANYEHUNHE"],["519121","PY6GYDQKFZQA","浦银6个月定期开放债券A","定开债券","PUYIN6GEYUEDINGQIKAIFANGZHAIQUANA"],["519122","PY6GYDQKFZQC","浦银6个月定期开放债券C","定开债券","PUYIN6GEYUEDINGQIKAIFANGZHAIQUANC"],["519123","PYJJTLDKZQA","浦银季季添利定开债券A","定开债券","PUYINJIJITIANLIDINGKAIZHAIQUANA"],["519124","PYJJTLDKZQC","浦银季季添利定开债券C","定开债券","PUYINJIJITIANLIDINGKAIZHAIQUANC"],["519125","PYASXFSJHHA","浦银安盛消费升级混合A","混合型","PUYINANSHENGXIAOFEISHENGJIHUNHEA"],["519126","PYASXJJJGHH","浦银安盛新经济结构混合","混合型","PUYINANSHENGXINJINGJIJIEGOUHUNHE"],["519127","PYASSSJXHHA","浦银安盛盛世精选混合A","混合型","PUYINANSHENGSHENGSHIJINGXUANHUNHEA"],["519128","PYASYYYDQZFZQA","浦银安盛月月盈定期支付债券A","定开债券","PUYINANSHENGYUEYUEYINGDINGQIZHIFUZHAIQUANA"],["519129","PYASYYYDQZFZQC","浦银安盛月月盈定期支付债券C","定开债券","PUYINANSHENGYUEYUEYINGDINGQIZHIFUZHAIQUANC"],["519130","HFTXNXHHA","海富通新内需混合A","混合型","HAIFUTONGXINNEIXUHUNHEA"],["519131","HFTJJZLLCZQ","海富通季季增利理财债券","理财型","HAIFUTONGJIJIZENGLILICAIZHAIQUAN"],["519132","HFTDCDSJHH","海富通东财大数据混合","混合型","HAIFUTONGDONGCAIDASHUJUHUNHE"],["519133","HFTGGQDHH","海富通改革驱动混合","混合型","HAIFUTONGGAIGEQUDONGHUNHE"],["519134","HFTFXHH","海富通富祥混合","混合型","HAIFUTONGFUXIANGHUNHE"],["519135","HFTRYZQ","海富通瑞益债券","债券型","HAIFUTONGRUIYIZHAIQUAN"],["519136","HFTRFYNDKZ","海富通瑞丰一年定开债","定开债券","HAIFUTONGRUIFENGYINIANDINGKAIZHAI"],["519139","HFTHGSLHPZHH","海富通沪港深灵活配置混合","混合型","HAIFUTONGHUGANGSHENLINGHUOPEIZHIHUNHE"],["519150","XHYXXFHH","新华优选消费混合","混合型","XINHUAYOUXUANXIAOFEIHUNHE"],["519152","XHCZTLA","新华纯债添利A","债券型","XINHUACHUNZHAITIANLIA"],["519153","XHCZTLC","新华纯债添利C","债券型","XINHUACHUNZHAITIANLIC"],["519156","XHHYLHPZHHA","新华行业灵活配置混合A","混合型","XINHUAHANGYELINGHUOPEIZHIHUNHEA"],["519157","XHHYLHPZHHC","新华行业灵活配置混合C","混合型","XINHUAHANGYELINGHUOPEIZHIHUNHEC"],["519158","XHQSLHHH","新华趋势领航混合","混合型","XINHUAQUSHILINGHANGHUNHE"],["519160","XHAXHJDKZQA","新华安享惠金定开债券A","定开债券","XINHUAANXIANGHUIJINDINGKAIZHAIQUANA"],["519161","XHAXHJDKZQC","新华安享惠金定开债券C","定开债券","XINHUAANXIANGHUIJINDINGKAIZHAIQUANC"],["519162","XHXYZYZQA","新华信用增益债券A","债券型","XINHUAXINYONGZENGYIZHAIQUANA"],["519163","XHXYZYZQC","新华信用增益债券C","债券型","XINHUAXINYONGZENGYIZHAIQUANC"],["519165","XHXLLHPZ","新华鑫利灵活配置","混合型","XINHUAXINLILINGHUOPEIZHI"],["519167","XHXABBYHHH","新华鑫安保本一号混合","保本型","XINHUAXINANBAOBENYIHAOHUNHE"],["519170","PYASZZDLHH","浦银安盛增长动力混合","混合型","PUYINANSHENGZENGZHANGDONGLIHUNHE"],["519171","PYASYLJKHH","浦银安盛医疗健康混合","混合型","PUYINANSHENGYILIAOJIANKANGHUNHE"],["519172","PYASRZJXHHA","浦银安盛睿智精选混合A","混合型","PUYINANSHENGRUIZHIJINGXUANHUNHEA"],["519173","PYASRZJXHHC","浦银安盛睿智精选混合C","混合型","PUYINANSHENGRUIZHIJINGXUANHUNHEC"],["519175","PYJJDJQHH","浦银经济带崛起混合","混合型","PUYINJINGJIDAIJUEQIHUNHE"],["519176","PYASXFSJHHC","浦银安盛消费升级混合C","混合型","PUYINANSHENGXIAOFEISHENGJIHUNHEC"],["519177","PYASSSJXHHC","浦银安盛盛世精选混合C","混合型","PUYINANSHENGSHENGSHIJINGXUANHUNHEC"],["519180","WJ180ZS","万家180指数","股票指数","WANJIA180ZHISHU"],["519181","WJHXZZ","万家和谐增长","混合型","WANJIAHEXIEZENGZHANG"],["519182","WJHXZZ","万家和谐增长(后端)","混合型","WANJIAHEXIEZENGZHANG"],["519183","WJSYQLHPZ","万家双引擎灵活配置","混合型","WANJIASHUANGYINQINGLINGHUOPEIZHI"],["519185","WJJXHH","万家精选混合","混合型","WANJIAJINGXUANHUNHE"],["519186","WJWJZLZQA","万家稳健增利债券A","债券型","WANJIAWENJIANZENGLIZHAIQUANA"],["519187","WJWJZLZQC","万家稳健增利债券C","债券型","WANJIAWENJIANZENGLIZHAIQUANC"],["519188","WJHLA","万家恒利A","债券型","WANJIAHENGLIA"],["519189","WJHLC","万家恒利C","债券型","WANJIAHENGLIC"],["519190","WJSLZQ","万家双利债券","债券型","WANJIASHUANGLIZHAIQUAN"],["519191","WJXLLHPZHH","万家新利灵活配置混合","混合型","WANJIAXINLILINGHUOPEIZHIHUNHE"],["519193","WJXFCZ","万家消费成长","股票型","WANJIAXIAOFEICHENGZHANG"],["519195","WJPZ","万家品质","混合型","WANJIAPINZHI"],["519196","WJXXLCLHPZHH","万家新兴蓝筹灵活配置混合","混合型","WANJIAXINXINGLANCHOULINGHUOPEIZHIHUNHE"],["519197","WJYD","万家颐达","保本型","WANJIAYIDA"],["519198","WJYHBBHH","万家颐和保本混合","保本型","WANJIAYIHEBAOBENHUNHE"],["519199","WJJXCZ","万家家享纯债","债券型","WANJIAJIAXIANGCHUNZHAI"],["519206","WJNNHRDKZA","万家年年恒荣定开债A","定开债券","WANJIANIANNIANHENGRONGDINGKAIZHAIA"],["519207","WJNNHRDKZC","万家年年恒荣定开债C","定开债券","WANJIANIANNIANHENGRONGDINGKAIZHAIC"],["519208","WJNNHXDKZA","万家年年恒祥定开债A","定开债券","WANJIANIANNIANHENGXIANGDINGKAIZHAIA"],["519209","WJNNHXDKZC","万家年年恒祥定开债C","定开债券","WANJIANIANNIANHENGXIANGDINGKAIZHAIC"],["519210","WJHJ18GYDKZA","万家恒景18个月定开债A","定开债券","WANJIAHENGJING18GEYUEDINGKAIZHAIA"],["519211","WJHJ18GYDKZC","万家恒景18个月定开债C","定开债券","WANJIAHENGJING18GEYUEDINGKAIZHAIC"],["519212","WJHGZSDCLHH","万家宏观择时多策略混合","混合型","WANJIAHONGGUANZESHIDUOCELUEHUNHE"],["519220","HFTJLZQ","海富通聚利债券","债券型","HAIFUTONGJULIZHAIQUAN"],["519221","HFTXYHHC","海富通欣益混合C","混合型","HAIFUTONGXINYIHUNHEC"],["519222","HFTXYHHA","海富通欣益混合A","混合型","HAIFUTONGXINYIHUNHEA"],["519223","HFTXRHHC","海富通欣荣混合C","混合型","HAIFUTONGXINRONGHUNHEC"],["519224","HFTXRHHA","海富通欣荣混合A","混合型","HAIFUTONGXINRONGHUNHEA"],["519225","HFTJLZQ","海富通集利债券","债券型","HAIFUTONGJILIZHAIQUAN"],["519226","HFTRLZQ","海富通瑞利债券","债券型","HAIFUTONGRUILIZHAIQUAN"],["519227","HFTXSDKHH","海富通欣盛定开混合","混合型","HAIFUTONGXINSHENGDINGKAIHUNHE"],["519228","HFTXXLHPZHHC","海富通欣享灵活配置混合C","混合型","HAIFUTONGXINXIANGLINGHUOPEIZHIHUNHEC"],["519229","HFTXXLHPZHHA","海富通欣享灵活配置混合A","混合型","HAIFUTONGXINXIANGLINGHUOPEIZHIHUNHEA"],["519230","HFTFYZQ","海富通富源债券","债券型","HAIFUTONGFUYUANZHAIQUAN"],["519300","DCHS300ZS","大成沪深300指数","股票指数","DACHENGHUSHEN300ZHISHU"],["519301","DCHS300ZS","大成沪深300指数(后端)","股票指数","DACHENGHUSHEN300ZHISHU"],["519320","PYASXFJLDKZA","浦银安盛幸福聚利定开债A","定开债券","PUYINANSHENGXINGFUJULIDINGKAIZHAIA"],["519321","PYASXFJLDKZC","浦银安盛幸福聚利定开债C","定开债券","PUYINANSHENGXINGFUJULIDINGKAIZHAIC"],["519322","PYASSYCZZQA","浦银安盛盛元纯债债券A","债券型","PUYINANSHENGSHENGYUANCHUNZHAIZHAIQUANA"],["519323","PYASSYCZZQC","浦银安盛盛元纯债债券C","债券型","PUYINANSHENGSHENGYUANCHUNZHAIZHAIQUANC"],["519324","PYASSXDKZA","浦银安盛盛鑫定开债A","定开债券","PUYINANSHENGSHENGXINDINGKAIZHAIA"],["519325","PYASSXDKZC","浦银安盛盛鑫定开债C","定开债券","PUYINANSHENGSHENGXINDINGKAIZHAIC"],["519326","PYASXFJYDKZA","浦银安盛幸福聚益定开债A","定开债券","PUYINANSHENGXINGFUJUYIDINGKAIZHAIA"],["519327","PYASXFJYDKZC","浦银安盛幸福聚益定开债C","定开债券","PUYINANSHENGXINGFUJUYIDINGKAIZHAIC"],["519328","PYASSTCZZQA","浦银安盛盛泰纯债债券A","债券型","PUYINANSHENGSHENGTAICHUNZHAIZHAIQUANA"],["519329","PYASSTCZZQC","浦银安盛盛泰纯债债券C","债券型","PUYINANSHENGSHENGTAICHUNZHAIZHAIQUANC"],["519330","PYASSYCZZQA","浦银安盛盛跃纯债债券A","债券型","PUYINANSHENGSHENGYUECHUNZHAIZHAIQUANA"],["519331","PYASSYCZZQC","浦银安盛盛跃纯债债券C","债券型","PUYINANSHENGSHENGYUECHUNZHAIZHAIQUANC"],["519332","PYASSDCZZQA","浦银安盛盛达纯债债券A","债券型","PUYINANSHENGSHENGDACHUNZHAIZHAIQUANA"],["519333","PYASSDCZZQC","浦银安盛盛达纯债债券C","债券型","PUYINANSHENGSHENGDACHUNZHAIZHAIQUANC"],["519334","PYASSQCZZQA","浦银安盛盛勤纯债债券A","债券型","PUYINANSHENGSHENGQINCHUNZHAIZHAIQUANA"],["519335","PYASSQCZZQC","浦银安盛盛勤纯债债券C","债券型","PUYINANSHENGSHENGQINCHUNZHAIZHAIQUANC"],["519501","WJHBR","万家货币R","货币型","WANJIAHUOBIR"],["519505","HFTHBA","海富通货币A","货币型","HAIFUTONGHUOBIA"],["519506","HFTHBB","海富通货币B","货币型","HAIFUTONGHUOBIB"],["519507","WJHBB","万家货币B","货币型","WANJIAHUOBIB"],["519508","WJHBA","万家货币A","货币型","WANJIAHUOBIA"],["519509","PYHBA","浦银货币A","货币型","PUYINHUOBIA"],["519510","PYHBB","浦银货币B","货币型","PUYINHUOBIB"],["519511","WJRRXHBA","万家日日薪货币A","货币型","WANJIARIRIXINHUOBIA"],["519512","WJRRXHBB","万家日日薪货币B","货币型","WANJIARIRIXINHUOBIB"],["519513","WJRRXHBR","万家日日薪货币R","货币型","WANJIARIRIXINHUOBIR"],["519516","PYHBE","浦银货币E","货币型","PUYINHUOBIE"],["519517","HTFHBB","汇添富货币B","货币型","HUITIANFUHUOBIB"],["519518","HTFHBA","汇添富货币A","货币型","HUITIANFUHUOBIA"],["519519","HTBRWBZLZQA","华泰柏瑞稳本增利债券A","债券型","HUATAIBAIRUIWENBENZENGLIZHAIQUANA"],["519566","PYASRRYHBA","浦银安盛日日盈货币A","货币型","PUYINANSHENGRIRIYINGHUOBIA"],["519567","PYASRRYHBB","浦银安盛日日盈货币B","货币型","PUYINANSHENGRIRIYINGHUOBIB"],["519568","PYASRRYHBD","浦银安盛日日盈货币D","货币型","PUYINANSHENGRIRIYINGHUOBID"],["519588","JYHBA","交银货币A","货币型","JIAOYINHUOBIA"],["519589","JYHBB","交银货币B","货币型","JIAOYINHUOBIB"],["519601","HFTZGHWHH","海富通中国海外混合","QDII","HAIFUTONGZHONGGUOHAIWAIHUNHE"],["519602","HFTDZHHHQDII","海富通大中华混合(QDII)","QDII","HAIFUTONGDAZHONGHUAHUNHEQDII"],["519606","GTJX","国泰金鑫","股票型","GUOTAIJINXIN"],["519610","YHWLHHA","银河旺利混合A","混合型","YINHEWANGLIHUNHEA"],["519611","YHWLHHC","银河旺利混合C","混合型","YINHEWANGLIHUNHEC"],["519612","YHWLHHI","银河旺利混合I","混合型","YINHEWANGLIHUNHEI"],["519613","YHJSHHA","银河君尚混合A","混合型","YINHEJUNSHANGHUNHEA"],["519614","YHJSHHC","银河君尚混合C","混合型","YINHEJUNSHANGHUNHEC"],["519615","YHJSHHI","银河君尚混合I","混合型","YINHEJUNSHANGHUNHEI"],["519616","YHJXHHA","银河君信混合A","混合型","YINHEJUNXINHUNHEA"],["519617","YHJXHHC","银河君信混合C","混合型","YINHEJUNXINHUNHEC"],["519618","YHJXHHI","银河君信混合I","混合型","YINHEJUNXINHUNHEI"],["519619","YHJRLHPZHHA","银河君荣灵活配置混合A","混合型","YINHEJUNRONGLINGHUOPEIZHIHUNHEA"],["519620","YHJRLHPZHHC","银河君荣灵活配置混合C","混合型","YINHEJUNRONGLINGHUOPEIZHIHUNHEC"],["519621","YHJRLHPZHHI","银河君荣灵活配置混合I","混合型","YINHEJUNRONGLINGHUOPEIZHIHUNHEI"],["519622","YHJYZQ","银河君怡债券","债券型","YINHEJUNYIZHAIQUAN"],["519623","YHJYHHA","银河君耀混合A","混合型","YINHEJUNYAOHUNHEA"],["519624","YHJYHHC","银河君耀混合C","混合型","YINHEJUNYAOHUNHEC"],["519625","YHJSHHA","银河君盛混合A","混合型","YINHEJUNSHENGHUNHEA"],["519626","YHJSHHC","银河君盛混合C","混合型","YINHEJUNSHENGHUNHEC"],["519627","YHJRHHA","银河君润混合A","混合型","YINHEJUNRUNHUNHEA"],["519628","YHJRHHC","银河君润混合C","混合型","YINHEJUNRUNHUNHEC"],["519629","YHRLHHA","银河睿利混合A","混合型","YINHERUILIHUNHEA"],["519630","YHRLHHC","银河睿利混合C","混合型","YINHERUILIHUNHEC"],["519631","YHJXZQ","银河君欣债券","债券型","YINHEJUNXINZHAIQUAN"],["519632","YHJHZQ","银河君辉债券","债券型","YINHEJUNHUIZHAIQUAN"],["519633","YHJTHHA","银河君腾混合A","混合型","YINHEJUNTENGHUNHEA"],["519634","YHJTHHC","银河君腾混合C","混合型","YINHEJUNTENGHUNHEC"],["519640","YHHLHHA","银河鸿利混合A","混合型","YINHEHONGLIHUNHEA"],["519641","YHHLHHC","银河鸿利混合C","混合型","YINHEHONGLIHUNHEC"],["519642","YHZZHH","银河智造混合","混合型","YINHEZHIZAOHUNHE"],["519644","YHZLHH","银河智联混合","混合型","YINHEZHILIANHUNHE"],["519646","YHXLHHI","银河鑫利混合I","混合型","YINHEXINLIHUNHEI"],["519647","YHHLHHI","银河鸿利混合I","混合型","YINHEHONGLIHUNHEI"],["519648","YHRLBBHHI","银河润利保本混合I","保本型","YINHERUNLIBAOBENHUNHEI"],["519649","YHBLLHPZHHA","银河犇利灵活配置混合A","混合型","YINHEBENLILINGHUOPEIZHIHUNHEA"],["519650","YHBLLHPZHHC","银河犇利灵活配置混合C","混合型","YINHEBENLILINGHUOPEIZHIHUNHEC"],["519651","YHZXHH","银河转型混合","混合型","YINHEZHUANXINGHUNHE"],["519652","YHXLHHA","银河鑫利混合A","混合型","YINHEXINLIHUNHEA"],["519653","YHXLHHC","银河鑫利混合C","混合型","YINHEXINLIHUNHEC"],["519654","YHZLBBHH","银河泽利保本混合","保本型","YINHEZELIBAOBENHUNHE"],["519655","YHFWHH","银河服务混合","混合型","YINHEFUWUHUNHE"],["519656","YHLHPZHHA","银河灵活配置混合A","混合型","YINHELINGHUOPEIZHIHUNHEA"],["519657","YHLHPZHHC","银河灵活配置混合C","混合型","YINHELINGHUOPEIZHIHUNHEC"],["519660","YHZLZQA","银河增利债券A","债券型","YINHEZENGLIZHAIQUANA"],["519661","YHZLZQC","银河增利债券C","债券型","YINHEZENGLIZHAIQUANC"],["519662","YHSSHBZQA","银河岁岁回报债券A","定开债券","YINHESUISUIHUIBAOZHAIQUANA"],["519663","YHSSHBZQC","银河岁岁回报债券C","定开债券","YINHESUISUIHUIBAOZHAIQUANC"],["519664","YHMLHHA","银河美丽混合A","混合型","YINHEMEILIHUNHEA"],["519665","YHMLHHC","银河美丽混合C","混合型","YINHEMEILIHUNHEC"],["519666","YHYXTLZQB","银河银信添利债券B","债券型","YINHEYINXINTIANLIZHAIQUANB"],["519667","YHYXTLZQA","银河银信添利债券A","债券型","YINHEYINXINTIANLIZHAIQUANA"],["519668","YHCZHH","银河成长混合","混合型","YINHECHENGZHANGHUNHE"],["519669","YHLXZQ","银河领先债券","债券型","YINHELINGXIANZHAIQUAN"],["519670","YHHYHH","银河行业混合","混合型","YINHEHANGYEHUNHE"],["519671","YHHS300JZ","银河沪深300价值","股票指数","YINHEHUSHEN300JIAZHI"],["519672","YHLCHH","银河蓝筹混合","混合型","YINHELANCHOUHUNHE"],["519673","YHKL","银河康乐","股票型","YINHEKANGLE"],["519674","YHCXCZHH","银河创新成长混合","混合型","YINHECHUANGXINCHENGZHANGHUNHE"],["519675","YHRLBBHHA","银河润利保本混合A","保本型","YINHERUNLIBAOBENHUNHEA"],["519676","YHQHZQ","银河强化债券","债券型","YINHEQIANGHUAZHAIQUAN"],["519677","YHDTBTXJAZS","银河定投宝腾讯济安指数","股票指数","YINHEDINGTOUBAOTENGXUNJIANZHISHU"],["519678","YHXFHH","银河消费混合","混合型","YINHEXIAOFEIHUNHE"],["519679","YHZTHH","银河主题混合","混合型","YINHEZHUTIHUNHE"],["519680","JYZLA/B","交银增利A/B","债券型","JIAOYINZENGLIA/B"],["519681","JYZLA/B","交银增利A/B(后端)","债券型","JIAOYINZENGLIA/B"],["519682","JYZLZQC","交银增利债券C","债券型","JIAOYINZENGLIZHAIQUANC"],["519683","JYSLA/B","交银双利A/B","债券型","JIAOYINSHUANGLIA/B"],["519684","JYSLA/B","交银双利A/B(后端)","债券型","JIAOYINSHUANGLIA/B"],["519685","JYSLZQC","交银双利债券C","债券型","JIAOYINSHUANGLIZHAIQUANC"],["519686","JY180ZLLJ","交银180治理联接","联接基金","JIAOYIN180ZHILILIANJIE"],["519687","JY180ZLLJ","交银180治理联接(后端)","联接基金","JIAOYIN180ZHILILIANJIE"],["519688","JYJXHH","交银精选混合","混合型","JIAOYINJINGXUANHUNHE"],["519689","JYJXHH","交银精选混合(后端)","混合型","JIAOYINJINGXUANHUNHE"],["519690","JYWJPZHHA","交银稳健配置混合A","混合型","JIAOYINWENJIANPEIZHIHUNHEA"],["519691","JYWJPZHHA","交银稳健配置混合A(后端)","混合型","JIAOYINWENJIANPEIZHIHUNHEA"],["519692","JYCZHH","交银成长混合","混合型","JIAOYINCHENGZHANGHUNHE"],["519693","JYCZHH","交银成长混合(后端)","混合型","JIAOYINCHENGZHANGHUNHE"],["519694","JYLCHH","交银蓝筹混合","混合型","JIAOYINLANCHOUHUNHE"],["519695","JYLCHH","交银蓝筹混合(后端)","混合型","JIAOYINLANCHOUHUNHE"],["519696","JYHQJXHHQDII","交银环球精选混合(QDII)","QDII","JIAOYINHUANQIUJINGXUANHUNHEQDII"],["519697","JYYSHYHH","交银优势行业混合","混合型","JIAOYINYOUSHIHANGYEHUNHE"],["519698","JYXFHH","交银先锋混合","混合型","JIAOYINXIANFENGHUNHE"],["519699","JYXFHH","交银先锋混合(后端)","混合型","JIAOYINXIANFENGHUNHE"],["519700","JYZTYX","交银主题优选","混合型","JIAOYINZHUTIYOUXUAN"],["519701","JYZTYX","交银主题优选(后端)","混合型","JIAOYINZHUTIYOUXUAN"],["519702","JYQSHH","交银趋势混合","混合型","JIAOYINQUSHIHUNHE"],["519703","JYQSHH","交银趋势混合(后端)","混合型","JIAOYINQUSHIHUNHE"],["519704","JYXJZZHH","交银先进制造混合","混合型","JIAOYINXIANJINZHIZAOHUNHE"],["519705","JYXJZZHH","交银先进制造混合(后端)","混合型","JIAOYINXIANJINZHIZAOHUNHE"],["519706","JYSZ300LJ","交银深证300联接","联接基金","JIAOYINSHENZHENG300LIANJIE"],["519707","JYSZ300LJ","交银深证300联接(后端)","联接基金","JIAOYINSHENZHENG300LIANJIE"],["519709","JYQQZYHHQDII","交银全球资源混合(QDII)","QDII","JIAOYINQUANQIUZIYUANHUNHEQDII"],["519710","JYCLHBLHPZHH","交银策略回报灵活配置混合","混合型","JIAOYINCELUEHUIBAOLINGHUOPEIZHIHUNHE"],["519712","JYAEFHXHH","交银阿尔法核心混合","混合型","JIAOYINAERFAHEXINHUNHE"],["519713","JYAEFHXHH","交银阿尔法核心混合(后端)","混合型","JIAOYINAERFAHEXINHUNHE"],["519714","JYXFXQDGP","交银消费新驱动股票","股票型","JIAOYINXIAOFEIXINQUDONGGUPIAO"],["519716","JYLC21TZQA","交银理财21天债券A","理财型","JIAOYINLICAI21TIANZHAIQUANA"],["519717","JY21TB","交银21天B","理财型","JIAOYIN21TIANB"],["519718","JYCZA","交银纯债A","债券型","JIAOYINCHUNZHAIA"],["519719","JYCZA","交银纯债A(后端)","债券型","JIAOYINCHUNZHAIA"],["519720","JYCZC","交银纯债C","债券型","JIAOYINCHUNZHAIC"],["519721","JY60TA","交银60天A","理财型","JIAOYIN60TIANA"],["519722","JY60TB","交银60天B","理财型","JIAOYIN60TIANB"],["519723","JYSLA","交银双轮A","债券型","JIAOYINSHUANGLUNA"],["519724","JYSLA","交银双轮A(后端)","债券型","JIAOYINSHUANGLUNA"],["519725","JYSLC","交银双轮C","债券型","JIAOYINSHUANGLUNC"],["519726","JYRXBBHH","交银荣祥保本混合","保本型","JIAOYINRONGXIANGBAOBENHUNHE"],["519727","JYCZ30HH","交银成长30混合","混合型","JIAOYINCHENGZHANG30HUNHE"],["519728","JYCZ30HH","交银成长30混合(后端)","混合型","JIAOYINCHENGZHANG30HUNHE"],["519729","JYZQSYZQ","交银增强收益债券","债券型","JIAOYINZENGQIANGSHOUYIZHAIQUAN"],["519730","JYDQZFYYFZQA","交银定期支付月月丰债券A","债券型","JIAOYINDINGQIZHIFUYUEYUEFENGZHAIQUANA"],["519731","JYDQZFYYFZQC","交银定期支付月月丰债券C","债券型","JIAOYINDINGQIZHIFUYUEYUEFENGZHAIQUANC"],["519732","JYDQZFSXPHHH","交银定期支付双息平衡混合","混合型","JIAOYINDINGQIZHIFUSHUANGXIPINGHENGHUNHE"],["519733","JYQHHBA","交银强化回报A","债券型","JIAOYINQIANGHUAHUIBAOA"],["519734","JYQHHBA","交银强化回报A(后端)","债券型","JIAOYINQIANGHUAHUIBAOA"],["519735","JYQHHBC","交银强化回报C","债券型","JIAOYINQIANGHUAHUIBAOC"],["519736","JYXCZHH","交银新成长混合","混合型","JIAOYINXINCHENGZHANGHUNHE"],["519737","JYXCZHH","交银新成长混合(后端)","混合型","JIAOYINXINCHENGZHANGHUNHE"],["519738","JYZQHBLHPZHHA","交银周期回报灵活配置混合A","混合型","JIAOYINZHOUQIHUIBAOLINGHUOPEIZHIHUNHEA"],["519739","JYZQHBLHPZHHA","交银周期回报灵活配置混合A(后端)","混合型","JIAOYINZHOUQIHUIBAOLINGHUOPEIZHIHUNHEA"],["519740","JYFYSYZQA","交银丰盈收益债券","债券型","JIAOYINFENGYINGSHOUYIZHAIQUAN"],["519743","JYFRSYZQA","交银丰润收益债券A","债券型","JIAOYINFENGRUNSHOUYIZHAIQUANA"],["519745","JYFRSYZQC","交银丰润收益债券C","债券型","JIAOYINFENGRUNSHOUYIZHAIQUANC"],["519746","JYFXSYZQA","交银丰享收益债券A","债券型","JIAOYINFENGXIANGSHOUYIZHAIQUANA"],["519748","JYFXSYZQC","交银丰享收益债券C","债券型","JIAOYINFENGXIANGSHOUYIZHAIQUANC"],["519749","JYFZSYZQA","交银丰泽收益债券A","债券型","JIAOYINFENGZESHOUYIZHAIQUANA"],["519752","JYXHBLHPZHHA","交银新回报灵活配置混合A","混合型","JIAOYINXINHUIBAOLINGHUOPEIZHIHUNHEA"],["519753","JYRHBBHH","交银荣和保本混合","保本型","JIAOYINRONGHEBAOBENHUNHE"],["519755","JYDCLHBLHPZHHA","交银多策略回报灵活配置混合A","混合型","JIAOYINDUOCELUEHUIBAOLINGHUOPEIZHIHUNHEA"],["519756","JYGQGGLHPZHH","交银国企改革灵活配置混合","混合型","JIAOYINGUOQIGAIGELINGHUOPEIZHIHUNHE"],["519758","JYFSSYZQC","交银丰硕收益债券C","债券型","JIAOYINFENGSHUOSHOUYIZHAIQUANC"],["519759","JYZQHBLHPZHHC","交银周期回报灵活配置混合C","混合型","JIAOYINZHOUQIHUIBAOLINGHUOPEIZHIHUNHEC"],["519760","JYXHBLHPZHHC","交银新回报灵活配置混合C","混合型","JIAOYINXINHUIBAOLINGHUOPEIZHIHUNHEC"],["519761","JYDCLHBLHPZHHC","交银多策略回报灵活配置混合C","混合型","JIAOYINDUOCELUEHUIBAOLINGHUOPEIZHIHUNHEC"],["519762","JYYTCZZQA","交银裕通纯债债券A","债券型","JIAOYINYUTONGCHUNZHAIZHAIQUANA"],["519763","JYYTCZZQC","交银裕通纯债债券C","债券型","JIAOYINYUTONGCHUNZHAIZHAIQUANC"],["519764","JYZYHBLHPZHHA","交银卓越回报灵活配置混合A","混合型","JIAOYINZHUOYUEHUIBAOLINGHUOPEIZHIHUNHEA"],["519765","JYZYHBLHPZHHC","交银卓越回报灵活配置混合C","混合型","JIAOYINZHUOYUEHUIBAOLINGHUOPEIZHIHUNHEC"],["519766","JYRXBBHH","交银荣鑫保本混合","保本型","JIAOYINRONGXINBAOBENHUNHE"],["519767","JYKJCXLHPZHH","交银科技创新灵活配置混合","混合型","JIAOYINKEJICHUANGXINLINGHUOPEIZHIHUNHE"],["519768","JYYXHBLHPZHHA","交银优选回报灵活配置混合A","混合型","JIAOYINYOUXUANHUIBAOLINGHUOPEIZHIHUNHEA"],["519769","JYYXHBLHPZHHC","交银优选回报灵活配置混合C","混合型","JIAOYINYOUXUANHUIBAOLINGHUOPEIZHIHUNHEC"],["519770","JYYZHBLHPZHHA","交银优择回报灵活配置混合A","混合型","JIAOYINYOUZEHUIBAOLINGHUOPEIZHIHUNHEA"],["519771","JYYZHBLHPZHHC","交银优择回报灵活配置混合C","混合型","JIAOYINYOUZEHUIBAOLINGHUOPEIZHIHUNHEC"],["519772","JYXSHLLHPZHH","交银新生活力灵活配置混合","混合型","JIAOYINXINSHENGHUOLILINGHUOPEIZHIHUNHE"],["519773","JYSJCYLHPZHH","交银数据产业灵活配置混合","混合型","JIAOYINSHUJUCHANYELINGHUOPEIZHIHUNHE"],["519774","JYYXCZZQA","交银裕兴纯债债券A","债券型","JIAOYINYUXINGCHUNZHAIZHAIQUANA"],["519775","JYYXCZZQC","交银裕兴纯债债券C","债券型","JIAOYINYUXINGCHUNZHAIZHAIQUANC"],["519776","JYYYCZZQA","交银裕盈纯债债券A","债券型","JIAOYINYUYINGCHUNZHAIZHAIQUANA"],["519777","JYYYCZZQC","交银裕盈纯债债券C","债券型","JIAOYINYUYINGCHUNZHAIZHAIQUANC"],["519778","JYJJXDLHH","交银经济新动力混合","混合型","JIAOYINJINGJIXINDONGLIHUNHE"],["519779","JYHGSJZJXHH","交银沪港深价值精选混合","混合型","JIAOYINHUGANGSHENJIAZHIJINGXUANHUNHE"],["519781","JYLXHBHH","交银领先回报混合","混合型","JIAOYINLINGXIANHUIBAOHUNHE"],["519782","JYYLCZZQA","交银裕隆纯债债券A","债券型","JIAOYINYULONGCHUNZHAIZHAIQUANA"],["519783","JYYLCZZQC","交银裕隆纯债债券C","债券型","JIAOYINYULONGCHUNZHAIZHAIQUANC"],["519784","JYJSSYZQA","交银境尚收益债券A","债券型","JIAOYINJINGSHANGSHOUYIZHAIQUANA"],["519785","JYJSSYZQC","交银境尚收益债券C","债券型","JIAOYINJINGSHANGSHOUYIZHAIQUANC"],["519786","JYYLCZZQA","交银裕利纯债债券A","债券型","JIAOYINYULICHUNZHAIZHAIQUANA"],["519787","JYYLCZZQC","交银裕利纯债债券C","债券型","JIAOYINYULICHUNZHAIZHAIQUANC"],["519800","HXBZJLCHBA","华夏保证金理财货币A","货币型","HUAXIABAOZHENGJINLICAIHUOBIA"],["519801","HXBZJLCHBB","华夏保证金理财货币B","货币型","HUAXIABAOZHENGJINLICAIHUOBIB"],["519808","JSBZJCNSSHBA","嘉实保证金场内申赎货币A","货币型","JIASHIBAOZHENGJINCHANGNEISHENSHUHUOBIA"],["519809","JSBZJCNSSHBB","嘉实保证金场内申赎货币B","货币型","JIASHIBAOZHENGJINCHANGNEISHENSHUHUOBIB"],["519858","GFXJBCNHBA","广发现金宝场内货币A","货币型","GUANGFAXIANJINBAOCHANGNEIHUOBIA"],["519859","GFXJBCNHBB","广发现金宝场内货币B","货币型","GUANGFAXIANJINBAOCHANGNEIHUOBIB"],["519878","GSABCNSSSSHBA","国寿安保场内实时申赎货币A","货币型","GUOSHOUANBAOCHANGNEISHISHISHENSHUHUOBIA"],["519879","GSABCNSSSSHBB","国寿安保场内实时申赎货币B","货币型","GUOSHOUANBAOCHANGNEISHISHISHENSHUHUOBIB"],["519888","HTFSYKXHBA","汇添富收益快线货币A","货币型","HUITIANFUSHOUYIKUAIXIANHUOBIA"],["519889","HTFSYKXHBB","汇添富收益快线货币B","货币型","HUITIANFUSHOUYIKUAIXIANHUOBIB"],["519898","DCXJBHBA","大成现金宝货币A","货币型","DACHENGXIANJINBAOHUOBIA"],["519899","DCXJBHBB","大成现金宝货币B","货币型","DACHENGXIANJINBAOHUOBIB"],["519908","HXXHHHA","华夏兴华混合A","混合型","HUAXIAXINGHUAHUNHEA"],["519909","HAASHH","华安安顺混合","混合型","HUAANANSHUNHUNHE"],["519915","FGXFZTHH","富国消费主题混合","混合型","FUGUOXIAOFEIZHUTIHUNHE"],["519918","HXXHHH","华夏兴和混合","混合型","HUAXIAXINGHEHUNHE"],["519929","CXDZXXHYLHHH","长信电子信息行业量化混合","混合型","CHANGXINDIANZIXINXIHANGYELIANGHUAHUNHE"],["519931","CXGGTZS","长信港股通指数","股票指数","CHANGXINGANGGUTONGZHISHU"],["519933","CXLFZQ","长信利发债券","债券型","CHANGXINLIFAZHAIQUAN"],["519935","CXCXQDGP","长信创新驱动股票","股票型","CHANGXINCHUANGXINQUDONGGUPIAO"],["519937","CXXRZQ","长信先锐债券","债券型","CHANGXINXIANRUIZHAIQUAN"],["519939","CXHWSYYNDKZ","长信海外收益一年定开债","QDII","CHANGXINHAIWAISHOUYIYINIANDINGKAIZHAI"],["519940","CXFQCZYNDKZC","长信富全纯债一年定开债C","定开债券","CHANGXINFUQUANCHUNZHAIYINIANDINGKAIZHAIC"],["519941","CXFQCZYNDKZA","长信富全纯债一年定开债A","定开债券","CHANGXINFUQUANCHUNZHAIYINIANDINGKAIZHAIA"],["519942","CXFTCZYNDKZC","长信富泰纯债一年定开债C","定开债券","CHANGXINFUTAICHUNZHAIYINIANDINGKAIZHAIC"],["519943","CXFTCZYNDKZA","长信富泰纯债一年定开债A","定开债券","CHANGXINFUTAICHUNZHAIYINIANDINGKAIZHAIA"],["519944","CXFACZYNDKZC","长信富安纯债一年定开债C","定开债券","CHANGXINFUANCHUNZHAIYINIANDINGKAIZHAIC"],["519945","CXFACZYNDKZA","长信富安纯债一年定开债A","定开债券","CHANGXINFUANCHUNZHAIYINIANDINGKAIZHAIA"],["519947","CXLBZQ","长信利保债券","债券型","CHANGXINLIBAOZHAIQUAN"],["519949","CXLXLHPZHH","长信利信灵活配置混合","混合型","CHANGXINLIXINLINGHUOPEIZHIHUNHE"],["519951","CXLTLHPZHH","长信利泰灵活配置混合","混合型","CHANGXINLITAILINGHUOPEIZHIHUNHE"],["519953","CXFHCZYNDKZ","长信富海纯债一年定开债","定开债券","CHANGXINFUHAICHUNZHAIYINIANDINGKAIZHAI"],["519955","CXFMCZYNDKZ","长信富民纯债一年定开债","定开债券","CHANGXINFUMINCHUNZHAIYINIANDINGKAIZHAI"],["519956","CXRJHHC","长信睿进混合C","混合型","CHANGXINRUIJINHUNHEC"],["519957","CXRJHHA","长信睿进混合A","混合型","CHANGXINRUIJINHUNHEA"],["519959","CXDLHH","长信多利混合","混合型","CHANGXINDUOLIHUNHE"],["519960","CXLGHHC","长信利广混合C","混合型","CHANGXINLIGUANGHUNHEC"],["519961","CXLGHHA","长信利广混合A","混合型","CHANGXINLIGUANGHUNHEA"],["519962","CXLYHHC","长信利盈混合C","混合型","CHANGXINLIYINGHUNHEC"],["519963","CXLYHHA","长信利盈混合A","混合型","CHANGXINLIYINGHUNHEA"],["519965","CXLHDCLGP","长信量化多策略股票","股票型","CHANGXINLIANGHUADUOCELUEGUPIAO"],["519967","CXLFZQ","长信利富债券","债券型","CHANGXINLIFUZHAIQUAN"],["519969","CXXLLHPZHH","长信新利灵活配置混合","混合型","CHANGXINXINLILINGHUOPEIZHIHUNHE"],["519971","CXGGHLHH","长信改革红利混合","混合型","CHANGXINGAIGEHONGLIHUNHE"],["519972","CXCZYNDKZQC","长信纯债一年定开债券C","定开债券","CHANGXINCHUNZHAIYINIANDINGKAIZHAIC"],["519973","CXCZYNDKZQA","长信纯债一年定开债券A","定开债券","CHANGXINCHUNZHAIYINIANDINGKAIZHAIA"],["519975","CXLHZXPGP","长信量化中小盘股票","股票型","CHANGXINLIANGHUAZHONGXIAOPANGUPIAO"],["519976","CXKZZZQC","长信可转债债券C","债券型","CHANGXINKEZHUANZHAIZHAIQUANC"],["519977","CXKZZZQA","长信可转债债券A","债券型","CHANGXINKEZHUANZHAIZHAIQUANA"],["519979","CXNXCZHH","长信内需成长混合","混合型","CHANGXINNEIXUCHENGZHANGHUNHE"],["519981","CXMGBP100","长信美国标普100","QDII-指数","CHANGXINMEIGUOBIAOPU100"],["519983","CXLHXFHHA","长信量化先锋混合A","混合型","CHANGXINLIANGHUAXIANFENGHUNHEA"],["519985","CXCZYHZQA","长信纯债壹号债券A","债券型","CHANGXINCHUNZHAIYIHAOZHAIQUANA"],["519986","CXHLYSHH","长信恒利优势混合(后端)","混合型","CHANGXINHENGLIYOUSHIHUNHE"],["519987","CXHLYSHH","长信恒利优势混合","混合型","CHANGXINHENGLIYOUSHIHUNHE"],["519989","CXLFZQ","长信利丰债券","债券型","CHANGXINLIFENGZHAIQUAN"],["519990","CXSLYX","长信双利优选(后端)","混合型","CHANGXINSHUANGLIYOUXUAN"],["519991","CXSLYX","长信双利优选","混合型","CHANGXINSHUANGLIYOUXUAN"],["519992","CXZLDTCLHH","长信增利动态策略混合(后端)","混合型","CHANGXINZENGLIDONGTAICELUEHUNHE"],["519993","CXZLDTCLHH","长信增利动态策略混合","混合型","CHANGXINZENGLIDONGTAICELUEHUNHE"],["519995","CXJLQSHH","长信金利趋势混合","混合型","CHANGXINJINLIQUSHIHUNHE"],["519997","CXYLJXHH","长信银利精选混合","混合型","CHANGXINYINLIJINGXUANHUNHE"],["519998","CXLXSYHBB","长信利息收益货币B","货币型","CHANGXINLIXISHOUYIHUOBIB"],["519999","CXLXSYHBA","长信利息收益货币A","货币型","CHANGXINLIXISHOUYIHUOBIA"],["530001","JXHJJZHH","建信恒久价值混合","混合型","JIANXINHENGJIUJIAZHIHUNHE"],["530002","JXHB","建信货币","货币型","JIANXINHUOBI"],["530003","JXYXCZHHA","建信优选成长混合A","混合型","JIANXINYOUXUANCHENGZHANGHUNHEA"],["530005","JXYHPZ","建信优化配置","混合型","JIANXINYOUHUAPEIZHI"],["530006","JXHXJXHH","建信核心精选混合","混合型","JIANXINHEXINJINGXUANHUNHE"],["530008","JXWDZLZQC","建信稳定增利债券C","债券型","JIANXINWENDINGZENGLIZHAIQUANC"],["530009","JXZQZQA","建信增强债券A","债券型","JIANXINZENGQIANGZHAIQUANA"],["530010","JXZRLJ","建信责任联接","联接基金","JIANXINZERENLIANJIE"],["530011","JXNSDLHH","建信内生动力混合","混合型","JIANXINNEISHENGDONGLIHUNHE"],["530012","JXJJPZHH","建信积极配置混合","混合型","JIANXINJIJIPEIZHIHUNHE"],["530014","JXSZLCA","建信双周理财A","理财型","JIANXINSHUANGZHOULICAIA"],["530015","JXSZ60LJ","建信深证60联接","联接基金","JIANXINSHENZHENG60LIANJIE"],["530016","JXHWJZ","建信恒稳价值","混合型","JIANXINHENGWENJIAZHI"],["530017","JXSXHLZQA","建信双息红利债券A","债券型","JIANXINSHUANGXIHONGLIZHAIQUANA"],["530018","JXSZ100ZQ","建信深证100增强","股票指数","JIANXINSHENZHENG100ZENGQIANG"],["530019","JXSHZRHH","建信社会责任混合","混合型","JIANXINSHEHUIZERENHUNHE"],["530020","JXZZZQZQA","建信转债增强债券A","债券型","JIANXINZHUANZHAIZENGQIANGZHAIQUANA"],["530021","JXCZA","建信纯债A","债券型","JIANXINCHUNZHAIA"],["530028","JXYYAXLCZQA","建信月盈安心理财债券A","理财型","JIANXINYUEYINGANXINLICAIZHAIQUANA"],["530029","JXSYAXLCZQA","建信双月安心理财债券A","理财型","JIANXINSHUANGYUEANXINLICAIZHAIQUANA"],["530030","JXZYAXLCZQA","建信周盈安心理财债券A","理财型","JIANXINZHOUYINGANXINLICAIZHAIQUANA"],["531008","JXWDZLZQA","建信稳定增利债券A","债券型","JIANXINWENDINGZENGLIZHAIQUANA"],["531009","JXZQZQC","建信增强债券C","债券型","JIANXINZENGQIANGZHAIQUANC"],["531014","JXSZLCB","建信双周理财B","理财型","JIANXINSHUANGZHOULICAIB"],["531017","JXSXHLZQC","建信双息红利债券C","债券型","JIANXINSHUANGXIHONGLIZHAIQUANC"],["531020","JXZZZQZQC","建信转债增强债券C","债券型","JIANXINZHUANZHAIZENGQIANGZHAIQUANC"],["531021","JXCZC","建信纯债C","债券型","JIANXINCHUNZHAIC"],["531028","JXYYAXLCZQB","建信月盈安心理财债券B","理财型","JIANXINYUEYINGANXINLICAIZHAIQUANB"],["531029","JXSYAXLCZQB","建信双月安心理财债券B","理财型","JIANXINSHUANGYUEANXINLICAIZHAIQUANB"],["531030","JXZYAXLCZQB","建信周盈安心理财债券B","理财型","JIANXINZHOUYINGANXINLICAIZHAIQUANB"],["539001","JXQQJYHHQDII","建信全球机遇混合(QDII)","QDII","JIANXINQUANQIUJIYUHUNHEQDII"],["539002","JXXXSCHHQDII","建信新兴市场混合(QDII)","QDII","JIANXINXINXINGSHICHANGHUNHEQDII"],["539003","JXQQZYHHQDII","建信全球资源混合(QDII)","QDII","JIANXINQUANQIUZIYUANHUNHEQDII"],["540001","HFJX2016ZQ","汇丰晋信2016周期","混合型","HUIFENGJINXIN2016ZHOUQI"],["540002","HFJXLTHH","汇丰晋信龙腾混合","混合型","HUIFENGJINXINLONGTENGHUNHE"],["540003","HFJXDTCL","汇丰晋信动态策略","混合型","HUIFENGJINXINDONGTAICELUE"],["540004","HFJX2026ZQ","汇丰晋信2026周期","混合型","HUIFENGJINXIN2026ZHOUQI"],["540005","HFJXPWZLZQA","汇丰晋信平稳增利债券A","债券型","HUIFENGJINXINPINGWENZENGLIZHAIQUANA"],["540006","HFJXDPGPA","汇丰晋信大盘股票A","股票型","HUIFENGJINXINDAPANGUPIAOA"],["540007","HFJXZXPGP","汇丰晋信中小盘股票","股票型","HUIFENGJINXINZHONGXIAOPANGUPIAO"],["540008","HFJXDTXF","汇丰晋信低碳先锋","股票型","HUIFENGJINXINDITANXIANFENG"],["540009","HFJXXFHL","汇丰晋信消费红利","股票型","HUIFENGJINXINXIAOFEIHONGLI"],["540010","HFJXKJXF","汇丰晋信科技先锋","股票型","HUIFENGJINXINKEJIXIANFENG"],["540011","HFJXHBA","汇丰晋信货币A","货币型","HUIFENGJINXINHUOBIA"],["540012","HFJXHSLTZSA","汇丰晋信恒生龙头指数A","股票指数","HUIFENGJINXINHENGSHENGLONGTOUZHISHUA"],["541004","HFJX2026ZQ","汇丰晋信2026周期(后端)","混合型","HUIFENGJINXIN2026ZHOUQI"],["541005","HFJXWZZQC","汇丰晋信稳增债券C","债券型","HUIFENGJINXINWENZENGZHAIQUANC"],["541011","HFJXHBB","汇丰晋信货币B","货币型","HUIFENGJINXINHUOBIB"],["550001","XCSJH","信诚四季红","混合型","XINCHENGSIJIHONG"],["550002","XCJCCZHH","信诚精萃成长混合","混合型","XINCHENGJINGCUICHENGZHANGHUNHE"],["550003","XCSSLCHH","信诚盛世蓝筹混合","混合型","XINCHENGSHENGSHILANCHOUHUNHE"],["550004","XCSDYZQA","信诚三得益债券A","债券型","XINCHENGSANDEYIZHAIQUANA"],["550005","XCSDYZQB","信诚三得益债券B","债券型","XINCHENGSANDEYIZHAIQUANB"],["550006","XCJDYZZQA","信诚经典优债债券A","债券型","XINCHENGJINGDIANYOUZHAIZHAIQUANA"],["550007","XCJDYZZQB","信诚经典优债债券B","债券型","XINCHENGJINGDIANYOUZHAIZHAIQUANB"],["550008","XCYSJXHH","信诚优胜精选混合","混合型","XINCHENGYOUSHENGJINGXUANHUNHE"],["550009","XCZXPHH","信诚中小盘混合","混合型","XINCHENGZHONGXIAOPANHUNHE"],["550010","XCHBA","信诚货币A","货币型","XINCHENGHUOBIA"],["550011","XCHBB","信诚货币B","货币型","XINCHENGHUOBIB"],["550012","XCLC7RYZQA","信诚理财7日盈债券A","理财型","XINCHENGLICAI7RIYINGZHAIQUANA"],["550013","XCLC7RYZQB","信诚理财7日盈债券B","理财型","XINCHENGLICAI7RIYINGZHAIQUANB"],["550015","XCTJFJZQJJTJ","信诚添金分级债券季季添金","固定收益","XINCHENGTIANJINFENJIZHAIQUANJIJITIANJIN"],["550016","XCTJFJZQSSTJ","信诚添金分级债券岁岁添金","分级杠杆","XINCHENGTIANJINFENJIZHAIQUANSUISUITIANJIN"],["550017","XCTJFJZQ","信诚添金分级债券","债券型","XINCHENGTIANJINFENJIZHAIQUAN"],["550018","XCYZCZZQA","信诚优质纯债债券A","债券型","XINCHENGYOUZHICHUNZHAIZHAIQUANA"],["550019","XCYZCZZQB","信诚优质纯债债券B","债券型","XINCHENGYOUZHICHUNZHAIZHAIQUANB"],["551001","XCSJH","信诚四季红(后端)","混合型","XINCHENGSIJIHONG"],["560001","YMHB","益民货币","货币型","YIMINHUOBI"],["560002","YMHLCZ","益民红利成长","混合型","YIMINHONGLICHENGZHANG"],["560003","YMCXYS","益民创新优势","混合型","YIMINCHUANGXINYOUSHI"],["560005","YMDLZQ","益民多利债券","债券型","YIMINDUOLIZHAIQUAN"],["560006","YMHXZZHH","益民核心增长混合","混合型","YIMINHEXINZENGZHANGHUNHE"],["570001","NDJZYSHH","诺德价值优势混合","混合型","NUODEJIAZHIYOUSHIHUNHE"],["570005","NDCZYSHH","诺德成长优势混合","混合型","NUODECHENGZHANGYOUSHIHUNHE"],["570006","NDZXPHH","诺德中小盘混合","混合型","NUODEZHONGXIAOPANHUNHE"],["570007","NDYX30HH","诺德优选30混合","混合型","NUODEYOUXUAN30HUNHE"],["570008","NDZQCLHH","诺德周期策略混合","混合型","NUODEZHOUQICELUEHUNHE"],["571002","NDZTLHPZ","诺德主题灵活配置","混合型","NUODEZHUTILINGHUOPEIZHI"],["573003","NDZQZQ","诺德增强债券","债券型","NUODEZENGQIANGZHAIQUAN"],["580001","DWJHYSJX","东吴嘉禾优势精选","混合型","DONGWUJIAHEYOUSHIJINGXUAN"],["580002","DWSDLHH","东吴双动力混合","混合型","DONGWUSHUANGDONGLIHUNHE"],["580003","DWHYLDHH","东吴行业轮动混合","混合型","DONGWUHANGYELUNDONGHUNHE"],["580005","DWJQCL","东吴进取策略","混合型","DONGWUJINQUCELUE"],["580006","DWXJJHH","东吴新经济混合","混合型","DONGWUXINJINGJIHUNHE"],["580007","DWAXLHHH","东吴安享量化混合","混合型","DONGWUANXIANGLIANGHUAHUNHE"],["580008","DWXCYJXHH","东吴新产业精选混合","混合型","DONGWUXINCHANYEJINGXUANHUNHE"],["580009","DWNXZZHH","东吴内需增长混合","混合型","DONGWUNEIXUZENGZHANGHUNHE"],["581002","DWSDLHH","东吴双动力混合(后端)","混合型","DONGWUSHUANGDONGLIHUNHE"],["582001","DWYXWJZQA","东吴优信稳健债券A","债券型","DONGWUYOUXINWENJIANZHAIQUANA"],["582002","DWZLZQA","东吴增利债券A","债券型","DONGWUZENGLIZHAIQUANA"],["582003","DWPZYHHH","东吴配置优化混合","混合型","DONGWUPEIZHIYOUHUAHUNHE"],["582201","DWYXWJZQC","东吴优信稳健债券C","债券型","DONGWUYOUXINWENJIANZHAIQUANC"],["582202","DWZLZQC","东吴增利债券C","债券型","DONGWUZENGLIZHAIQUANC"],["583001","DWHBA","东吴货币A","货币型","DONGWUHUOBIA"],["583101","DWHBB","东吴货币B","货币型","DONGWUHUOBIB"],["585001","DWZZXXCY","东吴中证新兴产业","股票指数","DONGWUZHONGZHENGXINXINGCHANYE"],["590001","ZYHXYXHH","中邮核心优选混合","混合型","ZHONGYOUHEXINYOUXUANHUNHE"],["590002","ZYHXCZHH","中邮核心成长混合","混合型","ZHONGYOUHEXINCHENGZHANGHUNHE"],["590003","ZYHXYS","中邮核心优势","混合型","ZHONGYOUHEXINYOUSHI"],["590005","ZYHXZTHH","中邮核心主题混合","混合型","ZHONGYOUHEXINZHUTIHUNHE"],["590006","ZYZXPPZ","中邮中小盘配置","混合型","ZHONGYOUZHONGXIAOPANPEIZHI"],["590007","ZYSZ380ZQ","中邮上证380增强","股票指数","ZHONGYOUSHANGZHENG380ZENGQIANG"],["590008","ZYZLXXCYHH","中邮战略新兴产业混合","混合型","ZHONGYOUZHANLUEXINXINGCHANYEHUNHE"],["590009","ZYWDSYZQA","中邮稳定收益债券A","债券型","ZHONGYOUWENDINGSHOUYIZHAIQUANA"],["590010","ZYWDSYZQC","中邮稳定收益债券C","债券型","ZHONGYOUWENDINGSHOUYIZHAIQUANC"],["610001","XDAYLXZZHH","信达澳银领先增长混合","混合型","XINDAAOYINLINGXIANZENGZHANGHUNHE"],["610002","XDAYJHPZ","信达澳银精华配置","混合型","XINDAAOYINJINGHUAPEIZHI"],["610003","XDAYWDJZZA","信达澳银稳定价值债A","债券型","XINDAAOYINWENDINGJIAZHIZHAIA"],["610004","XDAYZXPHH","信达澳银中小盘混合","混合型","XINDAAOYINZHONGXIAOPANHUNHE"],["610005","XDAYHLHBHH","信达澳银红利回报混合","混合型","XINDAAOYINHONGLIHUIBAOHUNHE"],["610006","XDAYCYSJHH","信达澳银产业升级混合","混合型","XINDAAOYINCHANYESHENGJIHUNHE"],["610007","XDAYXFYXHH","信达澳银消费优选混合","混合型","XINDAAOYINXIAOFEIYOUXUANHUNHE"],["610008","XDAYXYZZQA","信达澳银信用债债券A","债券型","XINDAAOYINXINYONGZHAIZHAIQUANA"],["610103","XDAYWDJZZB","信达澳银稳定价值债B","债券型","XINDAAOYINWENDINGJIAZHIZHAIB"],["610108","XDAYXYZZQ","信达澳银信用债债券C","债券型","XINDAAOYINXINYONGZHAIZHAIQUANC"],["620001","JYSABSDLHH","金元顺安宝石动力混合","混合型","JINYUANSHUNANBAOSHIDONGLIHUNHE"],["620002","JYSACZDLHH","金元顺安成长动力混合","混合型","JINYUANSHUNANCHENGZHANGDONGLIHUNHE"],["620003","JYSAFLZQ","金元顺安丰利债券","债券型","JINYUANSHUNANFENGLIZHAIQUAN"],["620004","JYSAJZZCHH","金元顺安价值增长混合","混合型","JINYUANSHUNANJIAZHIZENGZHANGHUNHE"],["620005","JYSAHXDLHH","金元顺安核心动力混合","混合型","JINYUANSHUNANHEXINDONGLIHUNHE"],["620006","JYSAXFZTHH","金元顺安消费主题混合","混合型","JINYUANSHUNANXIAOFEIZHUTIHUNHE"],["620007","JYSABBHHA","金元顺安保本混合A","保本型","JINYUANSHUNANBAOBENHUNHEA"],["620008","JYSAXJJZTHH","金元顺安新经济主题混合","混合型","JINYUANSHUNANXINJINGJIZHUTIHUNHE"],["620009","JYSAFXZQ","金元顺安丰祥债券","债券型","JINYUANSHUNANFENGXIANGZHAIQUAN"],["620010","JYSAJYBHBA","金元顺安金元宝货币A","货币型","JINYUANSHUNANJINYUANBAOHUOBIA"],["620011","JYSAJYBHBB","金元顺安金元宝货币B","货币型","JINYUANSHUNANJINYUANBAOHUOBIB"],["630001","HSLXQY","华商领先企业","混合型","HUASHANGLINGXIANQIYE"],["630002","HSSSCZHH","华商盛世成长混合","混合型","HUASHANGSHENGSHICHENGZHANGHUNHE"],["630003","HSZQZQA","华商增强债券A","债券型","HUASHANGZENGQIANGZHAIQUANA"],["630005","HSDTAEF","华商动态阿尔法","混合型","HUASHANGDONGTAIAERFA"],["630006","HSCYSJHH","华商产业升级混合","混合型","HUASHANGCHANYESHENGJIHUNHE"],["630007","HSWJSLZQA","华商稳健双利债券A","债券型","HUASHANGWENJIANSHUANGLIZHAIQUANA"],["630008","HSCLJX","华商策略精选","混合型","HUASHANGCELUEJINGXUAN"],["630009","HSWDZLZQA","华商稳定增利债券A","债券型","HUASHANGWENDINGZENGLIZHAIQUANA"],["630010","HSJZJXHH","华商价值精选混合","混合型","HUASHANGJIAZHIJINGXUANHUNHE"],["630011","HSZTJXHH","华商主题精选混合","混合型","HUASHANGZHUTIJINGXUANHUNHE"],["630012","HSXJZLHBA","华商现金增利货币A","货币型","HUASHANGXIANJINZENGLIHUOBIA"],["630015","HSDPLHJXHH","华商大盘量化精选混合","混合型","HUASHANGDAPANLIANGHUAJINGXUANHUNHE"],["630016","HSJZGXHH","华商价值共享混合","混合型","HUASHANGJIAZHIGONGXIANGHUNHE"],["630103","HSZQZQB","华商增强债券B","债券型","HUASHANGZENGQIANGZHAIQUANB"],["630107","HSWJSLZQB","华商稳健双利债券B","债券型","HUASHANGWENJIANSHUANGLIZHAIQUANB"],["630109","HSWDZLZQC","华商稳定增利债券C","债券型","HUASHANGWENDINGZENGLIZHAIQUANC"],["630112","HSXJZLHBB","华商现金增利货币B","货币型","HUASHANGXIANJINZENGLIHUOBIB"],["650001","YDCZAL","英大纯债A类","债券型","YINGDACHUNZHAIALEI"],["650002","YDCZCL","英大纯债C类","债券型","YINGDACHUNZHAICLEI"],["660001","NYHYCZHH","农银行业成长混合","混合型","NONGYINHANGYECHENGZHANGHUNHE"],["660002","NYHJZLZQA","农银恒久增利债券A","债券型","NONGYINHENGJIUZENGLIZHAIQUANA"],["660003","NYPHSL","农银平衡双利","混合型","NONGYINPINGHENGSHUANGLI"],["660004","NYCLJZHH","农银策略价值混合","混合型","NONGYINCELUEJIAZHIHUNHE"],["660005","NYZXPHH","农银中小盘混合","混合型","NONGYINZHONGXIAOPANHUNHE"],["660006","NYDPLCHH","农银大盘蓝筹混合","混合型","NONGYINDAPANLANCHOUHUNHE"],["660007","NYHBA","农银货币A","货币型","NONGYINHUOBIA"],["660008","NYHS300","农银沪深300","股票指数","NONGYINHUSHEN300"],["660009","NYZQSYZQA","农银增强收益债券A","债券型","NONGYINZENGQIANGSHOUYIZHAIQUANA"],["660010","NYCLJXHH","农银策略精选混合","混合型","NONGYINCELUEJINGXUANHUNHE"],["660011","NYZZ500","农银中证500","股票指数","NONGYINZHONGZHENG500"],["660012","NYXFZTHH","农银消费主题混合","混合型","NONGYINXIAOFEIZHUTIHUNHE"],["660013","NYHLXYTLZQ","农银汇理信用添利债券","债券型","NONGYINHUILIXINYONGTIANLIZHAIQUAN"],["660014","NYSZ100ZQ","农银深证100增强","股票指数","NONGYINSHENZHENG100ZENGQIANG"],["660015","NYHYLDHH","农银行业轮动混合","混合型","NONGYINHANGYELUNDONGHUNHE"],["660016","NYHL7TLCZQA","农银汇理7天理财债券A","理财型","NONGYINHUILI7TIANLICAIZHAIQUANA"],["660102","NYHJZLZQC","农银恒久增利债券C","债券型","NONGYINHENGJIUZENGLIZHAIQUANC"],["660107","NYHBB","农银货币B","货币型","NONGYINHUOBIB"],["660109","NYZQSYZQC","农银增强收益债券C","债券型","NONGYINZENGQIANGSHOUYIZHAIQUANC"],["660116","NYHL7TLCZQB","农银汇理7天理财债券B","理财型","NONGYINHUILI7TIANLICAIZHAIQUANB"],["671010","XBLDCLYXHH","西部利得策略优选混合","混合型","XIBULIDECELUEYOUXUANHUNHE"],["673010","XBLDXDXHH","西部利得新动向混合","混合型","XIBULIDEXINDONGXIANGHUNHE"],["673020","XBLDCZJXHH","西部利得成长精选混合","混合型","XIBULIDECHENGZHANGJINGXUANHUNHE"],["673030","XBLDDCLYXHH","西部利得多策略优选混合","混合型","XIBULIDEDUOCELUEYOUXUANHUNHE"],["673040","XBLDHYZTYXHHA","西部利得行业主题优选混合A","混合型","XIBULIDEHANGYEZHUTIYOUXUANHUNHEA"],["673043","XBLDHYZTYXHHC","西部利得行业主题优选混合C","混合型","XIBULIDEHANGYEZHUTIYOUXUANHUNHEC"],["673050","XBLDXYHH","西部利得新盈混合","混合型","XIBULIDEXINYINGHUNHE"],["673060","XBLDJRLHPZHH","西部利得景瑞灵活配置混合","混合型","XIBULIDEJINGRUILINGHUOPEIZHIHUNHE"],["673071","XBLDXDLHHA","西部利得新动力混合A","混合型","XIBULIDEXINDONGLIHUNHEA"],["673073","XBLDXDLHHC","西部利得新动力混合C","混合型","XIBULIDEXINDONGLIHUNHEC"],["673081","XBLDXYHHA","西部利得祥运混合A","混合型","XIBULIDEXIANGYUNHUNHEA"],["673083","XBLDXYHHC","西部利得祥运混合C","混合型","XIBULIDEXIANGYUNHUNHEC"],["673090","XBLDGGJXGP","西部利得个股精选股票","股票型","XIBULIDEGEGUJINGXUANGUPIAO"],["673100","XBLDJAHBHH","西部利得久安回报混合","混合型","XIBULIDEJIUANHUIBAOHUNHE"],["675011","XBLDWJSLZQA","西部利得稳健双利债券A","债券型","XIBULIDEWENJIANSHUANGLIZHAIQUANA"],["675013","XBLDWJSLZQC","西部利得稳健双利债券C","债券型","XIBULIDEWENJIANSHUANGLIZHAIQUANC"],["675031","XBLDTTXHBA","西部利得天添鑫货币A","货币型","XIBULIDETIANTIANXINHUOBIA"],["675032","XBLDTTXHBB","西部利得天添鑫货币B","货币型","XIBULIDETIANTIANXINHUOBIB"],["675041","XBLDHXA","西部利得合享A","债券型","XIBULIDEHEXIANGA"],["675043","XBLDHXC","西部利得合享C","债券型","XIBULIDEHEXIANGC"],["675051","XBLDHYZQA","西部利得合赢债券A","债券型","XIBULIDEHEYINGZHAIQUANA"],["675053","XBLDHYZQC","西部利得合赢债券C","债券型","XIBULIDEHEYINGZHAIQUANC"],["675061","XBLDTTFHBA","西部利得天添富货币A","货币型","XIBULIDETIANTIANFUHUOBIA"],["675062","XBLDTTFHBB","西部利得天添富货币B","货币型","XIBULIDETIANTIANFUHUOBIB"],["675071","XBLDTTJHBA","西部利得天添金货币A","货币型","XIBULIDETIANTIANJINHUOBIA"],["675072","XBLDTTJHBB","西部利得天添金货币B","货币型","XIBULIDETIANTIANJINHUOBIB"],["675081","XBLDXYZQA","西部利得祥盈债券A","债券型","XIBULIDEXIANGYINGZHAIQUANA"],["675083","XBLDXYZQC","西部利得祥盈债券C","债券型","XIBULIDEXIANGYINGZHAIQUANC"],["675091","XBLDXYZQA","西部利得祥逸债券A","债券型","XIBULIDEXIANGYIZHAIQUANA"],["675093","XBLDXYZQC","西部利得祥逸债券C","债券型","XIBULIDEXIANGYIZHAIQUANC"],["675100","XBLDDZZQ","西部利得得尊债券","债券型","XIBULIDEDEZUNZHAIQUAN"],["675111","XBLDHXZQA","西部利得汇享债券A","债券型","XIBULIDEHUIXIANGZHAIQUANA"],["675113","XBLDHXZQC","西部利得汇享债券C","债券型","XIBULIDEHUIXIANGZHAIQUANC"],["675121","XBHYZQA","西部汇逸债券A","债券型","XIBUHUIYIZHAIQUANA"],["675123","XBHYZQC","西部汇逸债券C","债券型","XIBUHUIYIZHAIQUANC"],["680001","ZSJCCLPZHH","浙商聚潮策略配置混合","混合型","ZHESHANGJUCHAOCELUEPEIZHIHUNHE"],["686868","ZSJYXYZZQA","浙商聚盈信用债债券A","债券型","ZHESHANGJUYINGXINYONGZHAIZHAIQUANA"],["686869","ZSJYXYZZQC","浙商聚盈信用债债券C","债券型","ZHESHANGJUYINGXINYONGZHAIZHAIQUANC"],["688888","ZSJCCYCZHH","浙商聚潮产业成长混合","混合型","ZHESHANGJUCHAOCHANYECHENGZHANGHUNHE"],["690001","MSLC","民生蓝筹","混合型","MINSHENGLANCHOU"],["690002","MSZQZQA","民生增强债券A","债券型","MINSHENGZENGQIANGZHAIQUANA"],["690003","MSJYJXHH","民生加银精选混合","混合型","MINSHENGJIAYINJINGXUANHUNHE"],["690004","MSJYWJCZHH","民生加银稳健成长混合","混合型","MINSHENGJIAYINWENJIANCHENGZHANGHUNHE"],["690005","MSJYNXZZHH","民生加银内需增长混合","混合型","MINSHENGJIAYINNEIXUZENGZHANGHUNHE"],["690006","MSXYSLZQA","民生信用双利债券A","债券型","MINSHENGXINYONGSHUANGLIZHAIQUANA"],["690007","MSJYJQHYHH","民生加银景气行业混合","混合型","MINSHENGJIAYINJINGQIHANGYEHUNHE"],["690008","MSZZZYZS","民生中证资源指数","股票指数","MINSHENGZHONGZHENGZIYUANZHISHU"],["690009","MSJYHLHB","民生加银红利回报","混合型","MINSHENGJIAYINHONGLIHUIBAO"],["690010","MSJYXJZLHBA","民生加银现金增利货币A","货币型","MINSHENGJIAYINXIANJINZENGLIHUOBIA"],["690011","MSJYJJCZHH","民生加银积极成长混合","混合型","MINSHENGJIAYINJIJICHENGZHANGHUNHE"],["690012","MSJYJYLC7TA","民生加银家盈理财7天A","理财型","MINSHENGJIAYINJIAYINGLICAI7TIANA"],["690202","MSZQZQC","民生增强债券C","债券型","MINSHENGZENGQIANGZHAIQUANC"],["690206","MSXYSLZQC","民生信用双利债券C","债券型","MINSHENGXINYONGSHUANGLIZHAIQUANC"],["690210","MSJYXJZLHBB","民生加银现金增利货币B","货币型","MINSHENGJIAYINXIANJINZENGLIHUOBIB"],["690212","MSJYJYLC7TB","民生加银家盈理财7天B","理财型","MINSHENGJIAYINJIAYINGLICAI7TIANB"],["700001","PADHHYXFHH","平安大华行业先锋混合","混合型","PINGANDAHUAHANGYEXIANFENGHUNHE"],["700002","PADHSZ300","平安大华深证300","股票指数","PINGANDAHUASHENZHENG300"],["700003","PADHCLXFHH","平安大华策略先锋混合","混合型","PINGANDAHUACELUEXIANFENGHUNHE"],["700004","PADHBBHH","平安大华保本混合","保本型","PINGANDAHUABAOBENHUNHE"],["700005","PADHTLZQA","平安大华添利债券A","债券型","PINGANDAHUATIANLIZHAIQUANA"],["700006","PADHTLZQC","平安大华添利债券C","债券型","PINGANDAHUATIANLIZHAIQUANC"],["710001","FADYSCZHH","富安达优势成长混合","混合型","FUANDAYOUSHICHENGZHANGHUNHE"],["710002","FADCLJXHH","富安达策略精选混合","混合型","FUANDACELUEJINGXUANHUNHE"],["710301","FADZQSYZQA","富安达增强收益债券A","债券型","FUANDAZENGQIANGSHOUYIZHAIQUANA"],["710302","FADZQSYZQC","富安达增强收益债券C","债券型","FUANDAZENGQIANGSHOUYIZHAIQUANC"],["710501","FADXJTHBA","富安达现金通货币A","货币型","FUANDAXIANJINTONGHUOBIA"],["710502","FADXJTHBB","富安达现金通货币B","货币型","FUANDAXIANJINTONGHUOBIB"],["720001","CTJZDL","财通价值动量","混合型","CAITONGJIAZHIDONGLIANG"],["720002","CTDCLWZZQ","财通多策略稳增债券","债券型","CAITONGDUOCELUEWENZENGZHAIQUAN"],["720003","CTSYZQZQ","财通收益增强债券","债券型","CAITONGSHOUYIZENGQIANGZHAIQUAN"],["730001","FZFBCXDLHH","方正富邦创新动力混合","混合型","FANGZHENGFUBANGCHUANGXINDONGLIHUNHE"],["730002","FZFBHLJXHH","方正富邦红利精选混合","混合型","FANGZHENGFUBANGHONGLIJINGXUANHUNHE"],["730003","FZFBHBA","方正富邦货币A","货币型","FANGZHENGFUBANGHUOBIA"],["730103","FZFBHBB","方正富邦货币B","货币型","FANGZHENGFUBANGHUOBIB"],["740001","CAHGCLHH","长安宏观策略混合","混合型","CHANGANHONGGUANCELUEHUNHE"],["740101","CAHS300FZQ","长安沪深300非周期","股票指数","CHANGANHUSHEN300FEIZHOUQI"],["740601","CAHBA","长安货币A","货币型","CHANGANHUOBIA"],["740602","CAHBB","长安货币B","货币型","CHANGANHUOBIB"],["750001","AXLHPZHH","安信灵活配置混合","混合型","ANXINLINGHUOPEIZHIHUNHE"],["750002","AXMBSYZQA","安信目标收益债券A","债券型","ANXINMUBIAOSHOUYIZHAIQUANA"],["750003","AXMBSYZQC","安信目标收益债券C","债券型","ANXINMUBIAOSHOUYIZHAIQUANC"],["750005","AXPWZZHHFQA","安信平稳增长混合发起A","混合型","ANXINPINGWENZENGZHANGHUNHEFAQIA"],["750006","AXXJGLHBA","安信现金管理货币A","货币型","ANXINXIANJINGUANLIHUOBIA"],["750007","AXXJGLHBB","安信现金管理货币B","货币型","ANXINXIANJINGUANLIHUOBIB"],["762001","GJGXFQ","国金国鑫发起","混合型","GUOJINGUOXINFAQI"],["770001","DBYHHH","德邦优化混合","混合型","DEBANGYOUHUAHUNHE"]]; \ No newline at end of file diff --git a/trade_process/kline_technical_index.py b/trade_process/kline_technical_index.py index 1128b3e..3c997e7 100644 --- a/trade_process/kline_technical_index.py +++ b/trade_process/kline_technical_index.py @@ -1,252 +1,252 @@ -#coding=utf-8 -""" - K线图 - 技术指标 - http://kekefund.com/2015/12/10/japan-candle-diagram-technique/ -""" - -import wrapcache -from tqdm import tqdm - -from data_process.data_get import get_all_stock_codes, get_stock_k_line - -@wrapcache.wrapcache(timeout=24*60*60) -def line_hammer_and_hang(code, df_code): - """ - 锤子线(底部反转) | 上吊线(顶部反转) - :param df_code: 一只股票代码的DataFrame - :return: - """ - - #print df_code[:3][['code', 'date','open','high','close','close','low']] - - dates_up = [] #锤子线 - dates_down = [] #上吊线 - for ix, row in df_code.iterrows(): - if ix - 3 < 0: - continue - - len_yingxian_down = min(row['close'], row['open']) - row['low'] #下影线长度 - len_yingxian_up = row['high'] - max(row['close'], row['open']) #上影线长度 - len_solid = abs(row['close'] - row['open']) # 实体线高度 - - if len_yingxian_down >= 2 * len_solid and len_yingxian_up < len_solid * 0.1: - trend = _judge_trend(df_code.ix[ix-3:ix+1]) - if trend == -1: # 下降趋势 - dates_up.append(str(row['date'])) - elif trend == 1: # 上升趋势 - dates_down.append(str(row['date'])) - - code_dict = {} - code_dict[code] = {'up': dates_up, 'down':dates_down} - - return code_dict - -def shape_devour(code, df_code): - """ - 吞没形态 - --- 看涨吞没形态 - --- 看跌吞没形态 - :param code: - :param df_code: - :return: - """ - - dates_up = [] #看涨 - dates_down = [] #看跌 - - for ix, row in df_code.iterrows(): - if ix - 3 < 0: - continue - - #判断趋势 - trend = _judge_trend(df_code.ix[ix-3:ix]) - - #先判断形态 - row_pre = df_code.ix[ix-1] - - # 1,看涨吞没形态 - if trend == -1 and \ - row_pre.close < row_pre.open and \ - row.close > row_pre.open and \ - row.open < row_pre.close: - print row_pre - print row - dates_up.append(str(row['date'])) - - # 2,看跌吞没形态 - if trend == 1 and \ - (row_pre.close > row_pre.open) and \ - row.close < row_pre.open and \ - row.open > row_pre.close: - dates_down.append(str(row['date'])) - - code_dict = {} - code_dict[code] = {'up': dates_up, 'down':dates_down} - #print code_dict - return code_dict - -def shape_dark_cloud_cover_top(code, df_code): - """ - 乌云盖顶形态(顶部反转) | 透刺形态(底部反转) - :param code: - :param df_code: - :return: - """ - - dates_up = [] #看涨 - dates_down = [] #看跌 - - for ix, row in df_code.iterrows(): - if ix - 5 < 0: - continue - - #判断趋势 - pct_changes = df_code.ix[ix-5:ix].close.pct_change() - - if len(pct_changes[pct_changes > 0]) >= 3: # 必须近期总体趋势是向上的 - - row_pre = df_code.ix[ix-1] - if row_pre.close > row_pre.open and row.close < row.open: # 前一天是坚挺的白色实体, 当前天是黑色实体 - if row.open > row_pre.high + (row_pre.close + row_pre.open) * 0.2: # 当前天的开盘价超过了(前一天的最高价 + 系数) - if row.close < (row_pre.open + row_pre.close)/2 and row.close > row_pre.open: # 当前天的收盘价下穿到前一天白色实体的50% - dates_down.append(str(row.date)) - - elif len(pct_changes[pct_changes < 0]) >= 3: # 必须近期总体趋势是向下的 - - row_pre = df_code.ix[ix-1] - if row_pre.close < row_pre.open and row.close > row.open: # 前一天是黑色实体, 当前天是白色实体 - if row.open < row_pre.low - (row_pre.close + row_pre.open) * 0.2: # 当前天的开盘价低于(前一天的最低价 - 系数) - if row.close > (row_pre.open + row_pre.close)/2 and row.close < row_pre.open: # 当前天的收盘价上穿到前一天白色实体的50% - dates_up.append(str(row.date)) - code_dict = {} - code_dict[code] = {'up': dates_up, 'down':dates_down} - #print code_dict - return code_dict - -def shape_morning_and_evening_star(code, df_code): - """ - 启明星形态(底部反转) | 黄昏星形态(顶部反转) - 含十字线形态 - :return: dict - """ - dates_up = [] #看涨 - dates_down = [] #看跌 - - len_df = len(df_code) - for ix, row in df_code[1:len_df-1].iterrows(): - - row_pre = df_code.ix[ix-1] - row_post = df_code.ix[ix+1] - - if abs(row.open - row.close)/row.open < 0.02: # 星线 或 十字线 - if row_pre.close < row_pre.open and (row_pre.open-row_pre.close)/row_pre.open > 0.03: #前一天是黑色实体 且跌幅>3% - if max(row.open, row.close) < min(row_pre.close, row_pre.open): #当前天的实体部分与前一天的实体形成价格跳空 - if row_post.close > row_post.open and row_post.close > row_pre.close: #后一天是白色实体 且收盘价向上推进到前一天的黑色实体之内 - dates_up.append(str(row.date)) - - elif row_pre.close > row_pre.open and (row_pre.close-row_pre.open)/row_pre.open > 0.03: #前一天是白色实体 且涨幅>3% - if min(row.open, row.close) > max(row_pre.close, row_pre.open): #当前天的实体部分与前一天的实体形成价格跳空 - if row_post.close < row_post.open and row_post.close < row_pre.close: #后一天是黑色实体 且收盘价向下推进到前一天的白色实体之内 - dates_down.append(str(row.date)) - - - code_dict = {} - code_dict[code] = {'up': dates_up, 'down':dates_down} - #print code_dict - return code_dict - -def shape_meteor_and_invertedhammer_star(code, df_code): - """ - 流星形态 | 倒锤子线 - -- 非主要反转信号 - :return: dict - """ - dates_up = [] #看涨 - dates_down = [] #看跌 - - len_df = len(df_code) - for ix, row in df_code[5:len_df-1].iterrows(): - - row_pre = df_code.ix[ix-1] - row_post = df_code.ix[ix+1] - pct_changes = df_code.ix[ix-5:ix].close.pct_change() - - #定义流星: 1,流星实体部分较小; 2,白色或黑色皆可#流星上影线较长; 3,下影线几乎没有(长度小于实体的1/10) - meteor_star = abs(row.open - row.close)/row.open < 0.02 and \ - row.high-max(row.open, row.close) > abs(row.open - row.close) * 2 and \ - abs(row.low-min(row.open, row.close)) < abs(row.open - row.close) * 0.1 - if meteor_star: - #流星 - if len(pct_changes[pct_changes > 0]) >= 3: # 必须近期总体趋势是向上的 - if min(row.open, row.close) > max(row_pre.close, row_pre.open): # 当前天的实体部分与前一天的实体形成价格跳空 - if max(row_post.open, row_post.close) < min(row.close, row.open) or \ - (row_post.open - row_post.close)/row_post.open > 0.03: # 后一天向下跳空 或 跌幅>3% - dates_down.append(str(row.date)) - #倒锤子线 - if len(pct_changes[pct_changes < 0]) >= 3: # 必须近期总体趋势是向下的 - if max(row.open, row.close) < min(row_pre.close, row_pre.open): # 当前天的实体部分与前一天的实体形成价格跳空 - if min(row_post.open, row_post.close) > max(row.close, row.open) or \ - (row_post.close - row_post.open)/row_post.open > 0.03: # 后一天向上跳空 或 涨幅>3% - dates_up.append(str(row.date)) - - - code_dict = {} - code_dict[code] = {'up': dates_up, 'down':dates_down} - #print code_dict - return code_dict - -# 辅助函数 -def _judge_trend(df_code): - """ - 判断收盘价趋势 - :param df_code: - :return: 1:上升; -1:下降; 0:震荡 - """ - pct_changes = df_code.close.pct_change() - - if len(pct_changes[pct_changes > 0]) == 0: # 下降趋势 - return -1 - elif len(pct_changes[pct_changes < 0]) == 0: # 上升趋势 - return 1 - else: - return 0 - -def run(): - codes = list(get_all_stock_codes()) - codes.reverse() - codes = ['000725'] - result_list = [] - for code in tqdm(codes): - df = get_stock_k_line(code, date_start='2016-01-01') - - code_dict = line_hammer_and_hang(code, df) - result_list.append(code_dict) - - code_dict = shape_dark_cloud_cover_top(code, df) - result_list.append(code_dict) - - code_dict = shape_devour(code, df) - result_list.append(code_dict) - - code_dict = shape_morning_and_evening_star(code, df) - result_list.append(code_dict) - - code_dict = shape_meteor_and_invertedhammer_star(code, df) - result_list.append(code_dict) - - - - for result in result_list: - for code, d in result.items(): - if d['up']: - print code, " up:", d['up'] - - for result in result_list: - for code, d in result.items(): - if d['down']: - print code, " down:", d['down'] - - print 'end' -if __name__ == "__main__": - run() - +#coding=utf-8 +""" + K线图 - 技术指标 + http://kekefund.com/2015/12/10/japan-candle-diagram-technique/ +""" + +import wrapcache +from tqdm import tqdm + +from data_process.data_get import get_all_stock_codes, get_stock_k_line + +@wrapcache.wrapcache(timeout=24*60*60) +def line_hammer_and_hang(code, df_code): + """ + 锤子线(底部反转) | 上吊线(顶部反转) + :param df_code: 一只股票代码的DataFrame + :return: + """ + + #print df_code[:3][['code', 'date','open','high','close','close','low']] + + dates_up = [] #锤子线 + dates_down = [] #上吊线 + for ix, row in df_code.iterrows(): + if ix - 3 < 0: + continue + + len_yingxian_down = min(row['close'], row['open']) - row['low'] #下影线长度 + len_yingxian_up = row['high'] - max(row['close'], row['open']) #上影线长度 + len_solid = abs(row['close'] - row['open']) # 实体线高度 + + if len_yingxian_down >= 2 * len_solid and len_yingxian_up < len_solid * 0.1: + trend = _judge_trend(df_code.ix[ix-3:ix+1]) + if trend == -1: # 下降趋势 + dates_up.append(str(row['date'])) + elif trend == 1: # 上升趋势 + dates_down.append(str(row['date'])) + + code_dict = {} + code_dict[code] = {'up': dates_up, 'down':dates_down} + + return code_dict + +def shape_devour(code, df_code): + """ + 吞没形态 + --- 看涨吞没形态 + --- 看跌吞没形态 + :param code: + :param df_code: + :return: + """ + + dates_up = [] #看涨 + dates_down = [] #看跌 + + for ix, row in df_code.iterrows(): + if ix - 3 < 0: + continue + + #判断趋势 + trend = _judge_trend(df_code.ix[ix-3:ix]) + + #先判断形态 + row_pre = df_code.ix[ix-1] + + # 1,看涨吞没形态 + if trend == -1 and \ + row_pre.close < row_pre.open and \ + row.close > row_pre.open and \ + row.open < row_pre.close: + print row_pre + print row + dates_up.append(str(row['date'])) + + # 2,看跌吞没形态 + if trend == 1 and \ + (row_pre.close > row_pre.open) and \ + row.close < row_pre.open and \ + row.open > row_pre.close: + dates_down.append(str(row['date'])) + + code_dict = {} + code_dict[code] = {'up': dates_up, 'down':dates_down} + #print code_dict + return code_dict + +def shape_dark_cloud_cover_top(code, df_code): + """ + 乌云盖顶形态(顶部反转) | 透刺形态(底部反转) + :param code: + :param df_code: + :return: + """ + + dates_up = [] #看涨 + dates_down = [] #看跌 + + for ix, row in df_code.iterrows(): + if ix - 5 < 0: + continue + + #判断趋势 + pct_changes = df_code.ix[ix-5:ix].close.pct_change() + + if len(pct_changes[pct_changes > 0]) >= 3: # 必须近期总体趋势是向上的 + + row_pre = df_code.ix[ix-1] + if row_pre.close > row_pre.open and row.close < row.open: # 前一天是坚挺的白色实体, 当前天是黑色实体 + if row.open > row_pre.high + (row_pre.close + row_pre.open) * 0.2: # 当前天的开盘价超过了(前一天的最高价 + 系数) + if row.close < (row_pre.open + row_pre.close)/2 and row.close > row_pre.open: # 当前天的收盘价下穿到前一天白色实体的50% + dates_down.append(str(row.date)) + + elif len(pct_changes[pct_changes < 0]) >= 3: # 必须近期总体趋势是向下的 + + row_pre = df_code.ix[ix-1] + if row_pre.close < row_pre.open and row.close > row.open: # 前一天是黑色实体, 当前天是白色实体 + if row.open < row_pre.low - (row_pre.close + row_pre.open) * 0.2: # 当前天的开盘价低于(前一天的最低价 - 系数) + if row.close > (row_pre.open + row_pre.close)/2 and row.close < row_pre.open: # 当前天的收盘价上穿到前一天白色实体的50% + dates_up.append(str(row.date)) + code_dict = {} + code_dict[code] = {'up': dates_up, 'down':dates_down} + #print code_dict + return code_dict + +def shape_morning_and_evening_star(code, df_code): + """ + 启明星形态(底部反转) | 黄昏星形态(顶部反转) + 含十字线形态 + :return: dict + """ + dates_up = [] #看涨 + dates_down = [] #看跌 + + len_df = len(df_code) + for ix, row in df_code[1:len_df-1].iterrows(): + + row_pre = df_code.ix[ix-1] + row_post = df_code.ix[ix+1] + + if abs(row.open - row.close)/row.open < 0.02: # 星线 或 十字线 + if row_pre.close < row_pre.open and (row_pre.open-row_pre.close)/row_pre.open > 0.03: #前一天是黑色实体 且跌幅>3% + if max(row.open, row.close) < min(row_pre.close, row_pre.open): #当前天的实体部分与前一天的实体形成价格跳空 + if row_post.close > row_post.open and row_post.close > row_pre.close: #后一天是白色实体 且收盘价向上推进到前一天的黑色实体之内 + dates_up.append(str(row.date)) + + elif row_pre.close > row_pre.open and (row_pre.close-row_pre.open)/row_pre.open > 0.03: #前一天是白色实体 且涨幅>3% + if min(row.open, row.close) > max(row_pre.close, row_pre.open): #当前天的实体部分与前一天的实体形成价格跳空 + if row_post.close < row_post.open and row_post.close < row_pre.close: #后一天是黑色实体 且收盘价向下推进到前一天的白色实体之内 + dates_down.append(str(row.date)) + + + code_dict = {} + code_dict[code] = {'up': dates_up, 'down':dates_down} + #print code_dict + return code_dict + +def shape_meteor_and_invertedhammer_star(code, df_code): + """ + 流星形态 | 倒锤子线 + -- 非主要反转信号 + :return: dict + """ + dates_up = [] #看涨 + dates_down = [] #看跌 + + len_df = len(df_code) + for ix, row in df_code[5:len_df-1].iterrows(): + + row_pre = df_code.ix[ix-1] + row_post = df_code.ix[ix+1] + pct_changes = df_code.ix[ix-5:ix].close.pct_change() + + #定义流星: 1,流星实体部分较小; 2,白色或黑色皆可#流星上影线较长; 3,下影线几乎没有(长度小于实体的1/10) + meteor_star = abs(row.open - row.close)/row.open < 0.02 and \ + row.high-max(row.open, row.close) > abs(row.open - row.close) * 2 and \ + abs(row.low-min(row.open, row.close)) < abs(row.open - row.close) * 0.1 + if meteor_star: + #流星 + if len(pct_changes[pct_changes > 0]) >= 3: # 必须近期总体趋势是向上的 + if min(row.open, row.close) > max(row_pre.close, row_pre.open): # 当前天的实体部分与前一天的实体形成价格跳空 + if max(row_post.open, row_post.close) < min(row.close, row.open) or \ + (row_post.open - row_post.close)/row_post.open > 0.03: # 后一天向下跳空 或 跌幅>3% + dates_down.append(str(row.date)) + #倒锤子线 + if len(pct_changes[pct_changes < 0]) >= 3: # 必须近期总体趋势是向下的 + if max(row.open, row.close) < min(row_pre.close, row_pre.open): # 当前天的实体部分与前一天的实体形成价格跳空 + if min(row_post.open, row_post.close) > max(row.close, row.open) or \ + (row_post.close - row_post.open)/row_post.open > 0.03: # 后一天向上跳空 或 涨幅>3% + dates_up.append(str(row.date)) + + + code_dict = {} + code_dict[code] = {'up': dates_up, 'down':dates_down} + #print code_dict + return code_dict + +# 辅助函数 +def _judge_trend(df_code): + """ + 判断收盘价趋势 + :param df_code: + :return: 1:上升; -1:下降; 0:震荡 + """ + pct_changes = df_code.close.pct_change() + + if len(pct_changes[pct_changes > 0]) == 0: # 下降趋势 + return -1 + elif len(pct_changes[pct_changes < 0]) == 0: # 上升趋势 + return 1 + else: + return 0 + +def run(): + codes = list(get_all_stock_codes()) + codes.reverse() + codes = ['000725'] + result_list = [] + for code in tqdm(codes): + df = get_stock_k_line(code, date_start='2016-01-01') + + code_dict = line_hammer_and_hang(code, df) + result_list.append(code_dict) + + code_dict = shape_dark_cloud_cover_top(code, df) + result_list.append(code_dict) + + code_dict = shape_devour(code, df) + result_list.append(code_dict) + + code_dict = shape_morning_and_evening_star(code, df) + result_list.append(code_dict) + + code_dict = shape_meteor_and_invertedhammer_star(code, df) + result_list.append(code_dict) + + + + for result in result_list: + for code, d in result.items(): + if d['up']: + print code, " up:", d['up'] + + for result in result_list: + for code, d in result.items(): + if d['down']: + print code, " down:", d['down'] + + print 'end' +if __name__ == "__main__": + run() + diff --git a/trade_process/live_trade.py b/trade_process/live_trade.py index c4626b3..b8851d8 100644 --- a/trade_process/live_trade.py +++ b/trade_process/live_trade.py @@ -1,152 +1,139 @@ -#!/usr/local/bin/python3 -#coding=utf-8 - -import sys -import platform -from apscheduler.schedulers.blocking import BlockingScheduler -import logging -logging.basicConfig() - -if platform.system() == 'Windows': - sys.path.append('../') -else: - sys.path.append('/Users/cbb/Documents/pythonspace/stock-master/') - -import ctypes -from ConfigParser import ConfigParser - -import data_process.online_data as OnlineData -from trade_process.strategy.macd_live_test import MAStrategy -from util.stockutil import fn_timer as fn_timer_ -from data_process.data_get import * -from data_process.Stock import Stock -import util.stockutil as util -from util.codeConvert import GetNowTime -from util.send_mail import send_email_163 -from init import * -from strategy.stop_loss import stop_loss_by_price - - - - - -#stock_list =['600893'] - - - - -def main(): - - #获取实时股价 - try: - stockList = OnlineData.getAllChinaStock() - except Exception, e: - errorLogger.logger.error(encode_wrap('获取实时估价失败! ') + str(e)) - return - - #止盈止损判断 - judgements = stop_loss_by_price() - if judgements: - for judgement in judgements: - infoLogger.logger.info(encode_wrap('卖出:{}'.format(judgement[0]))) - - - cf = ConfigParser() - cf.read(config_file_path) - threshold_buy = cf.get('trade_threshold', 'Threshold_Buy_Count') - threshold_sale = cf.get('trade_threshold', 'Threshold_Sale_Count') - infoLogger.logger.info(encode_wrap('阈值: Buy(%s) ,Sale(%s)' %(threshold_buy, threshold_sale))) - - # 监听股票列表 - stock_list = ['600000','600048', '600011', '002600', '002505', '000725', '000783', '300315', '002167', '601001',\ - '600893', '000020', '600111'] - - print '>>>>>Calcute ...' - stock_buy_list, stock_sale_list = live_mult_stock(stockList) - if len(stock_buy_list) == 0 and len([stock for stock in stock_sale_list if stock.code in stock_list]) == 0: - infoLogger.logger.info(encode_wrap('没有合适的买卖机会,请耐心等待')) - return - - str_all = '{}\n\n\n买入\n'.format(GetNowTime()) - - infoLogger.logger.info(encode_wrap('{}\n\n买入'.format(GetNowTime()))) - for stock in stock_buy_list: - infoLogger.logger.info('Buy now! ' + stock.str_print()) - str_all = str_all + stock.str_print() + '\n' - - #print encode_wrap('\n卖出:')f - print '\n' - infoLogger.logger.info(encode_wrap('卖出')) - str_all = '\n\n\n' + str_all + '卖出\n' - for stock in stock_sale_list: - # if stock.code in stock_list: - infoLogger.logger.info('Sale now! ' + stock.str_print()) - #print '>' * 3, 'Sale now!', encode_wrap(stock.name), stock.code, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' - str_all = str_all + stock.str_print() + '\n' - - send_email_163(subject='MA Strategy Results', content=str_all) - - -@fn_timer_ -def live_mult_stock(stockClassList): -# pool = ThreadPool(processes=4) -# pool.map(live_single_stock, stockClassList) -# pool.close() -# pool.join() - - stock_buy_list = [] - stock_sale_list = [] - for stock in stockClassList: - try: - live_single_stock(stock) - if stock.signal > 0: - stock_buy_list.append(stock) - elif stock.signal < 0: - stock_sale_list.append(stock) - except Exception, e: - errorLogger.logger.error((str(e))) - return stock_buy_list, stock_sale_list - -def live_single_stock(stock): - try: - # 多线程提醒实时买卖 - if float(stock.current) == 0.0: - #print '>>>', stock.name,'>>>停牌!', stock.close, stock.time - return 0, '' - - #取最近三个月的收盘价 - d_90_day = datetime.date.today() + datetime.timedelta(days=-90) - date_90_day = d_90_day.strftime("%Y-%m-%y") - df = get_stock_k_line(stock.code, date_start=date_90_day) - if len(df) < AVR_LONG: - return Stock() - - cf = ConfigParser() - cf.read(config_file_path) - threshold_buy = cf.get('trade_threshold', 'Threshold_Buy_Count') - threshold_sale = cf.get('trade_threshold', 'Threshold_Sale_Count') - - maStrategy = MAStrategy(code=stock.code, trade= stock.current, df_close=df) - signal = maStrategy.select_Time_Mix(int(threshold_buy), int(threshold_sale)) - # if signal > 0: - # print '>' * 5, 'Buy now!', stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' - - stock.signal = signal - return stock - - except Exception as e: - print encode_wrap(stock.name), str(e) - stock = Stock() - return stock - - - - -if __name__ == "__main__": - print ">>live trade begin" - main() - - sched = BlockingScheduler() - sched.add_job(main, 'cron', day_of_week='0-4', hour='9-12,13-15', minute='*/5') - - print ">>live trade end" +#!/usr/local/bin/python3 +#coding=utf-8 + +import sys +import platform +from apscheduler.schedulers.blocking import BlockingScheduler +import logging +import ctypes +from ConfigParser import ConfigParser + +import data_process.online_data as OnlineData +from trade_process.strategy.macd_live_test import MAStrategy +from util.stockutil import fn_timer as fn_timer_ +from data_process.data_get import * +from data_process.Stock import Stock +import util.stockutil as util +from util.codeConvert import GetNowTime +from util.send_mail import send_email_163 +from init import * +from strategy.stop_loss import stop_loss_by_price + +logging.basicConfig() +# import errorLogger +if platform.system() == 'Windows': + sys.path.append('../') +else: + sys.path.append('/Users/cbb/Documents/pythonspace/stock-master/') + +#stock_list =['600893'] +def main(): + + #获取实时股价 + try: + stockList = OnlineData.getAllChinaStock() + except Exception, e: + errorLogger.logger.error(encode_wrap('获取实时估价失败! ') + str(e)) + return + + #止盈止损判断 + judgements = stop_loss_by_price() + if judgements: + for judgement in judgements: + infoLogger.logger.info(encode_wrap('卖出:{}'.format(judgement[0]))) + + cf = ConfigParser() + cf.read(config_file_path) + threshold_buy = cf.get('trade_threshold', 'Threshold_Buy_Count') + threshold_sale = cf.get('trade_threshold', 'Threshold_Sale_Count') + infoLogger.logger.info(encode_wrap('阈值: Buy(%s) ,Sale(%s)' %(threshold_buy, threshold_sale))) + + # 监听股票列表 + stock_list = ['600000','600048', '600011', '002600', '002505', '000725', '000783', '300315', '002167', '601001',\ + '600893', '000020', '600111'] + + print '>>>>>Calcute ...' + stock_buy_list, stock_sale_list = live_mult_stock(stockList) + if len(stock_buy_list) == 0 and len([stock for stock in stock_sale_list if stock.code in stock_list]) == 0: + infoLogger.logger.info(encode_wrap('没有合适的买卖机会,请耐心等待')) + return + + str_all = '{}\n\n\n买入\n'.format(GetNowTime()) + + infoLogger.logger.info(encode_wrap('{}\n\n买入'.format(GetNowTime()))) + for stock in stock_buy_list: + infoLogger.logger.info('Buy now! ' + stock.str_print()) + str_all = str_all + stock.str_print() + '\n' + + #print encode_wrap('\n卖出:')f + print '\n' + infoLogger.logger.info(encode_wrap('卖出')) + str_all = '\n\n\n' + str_all + '卖出\n' + for stock in stock_sale_list: + # if stock.code in stock_list: + infoLogger.logger.info('Sale now! ' + stock.str_print()) + #print '>' * 3, 'Sale now!', encode_wrap(stock.name), stock.code, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' + str_all = str_all + stock.str_print() + '\n' + + send_email_163(subject='MA Strategy Results', content=str_all) + +@fn_timer_ +def live_mult_stock(stockClassList): +# pool = ThreadPool(processes=4) +# pool.map(live_single_stock, stockClassList) +# pool.close() +# pool.join() + + stock_buy_list = [] + stock_sale_list = [] + for stock in stockClassList: + try: + live_single_stock(stock) + if stock.signal > 0: + stock_buy_list.append(stock) + elif stock.signal < 0: + stock_sale_list.append(stock) + except Exception, e: + errorLogger.logger.error((str(e))) + return stock_buy_list, stock_sale_list + +def live_single_stock(stock): + try: + # 多线程提醒实时买卖 + if float(stock.current) == 0.0: + #print '>>>', stock.name,'>>>停牌!', stock.close, stock.time + return 0, '' + + #取最近三个月的收盘价 + d_90_day = datetime.date.today() + datetime.timedelta(days=-90) + date_90_day = d_90_day.strftime("%Y-%m-%y") + df = get_stock_k_line(stock.code, date_start=date_90_day) + if len(df) < AVR_LONG: + return Stock() + + cf = ConfigParser() + cf.read(config_file_path) + threshold_buy = cf.get('trade_threshold', 'Threshold_Buy_Count') + threshold_sale = cf.get('trade_threshold', 'Threshold_Sale_Count') + + maStrategy = MAStrategy(code=stock.code, trade= stock.current, df_close=df) + signal = maStrategy.select_Time_Mix(int(threshold_buy), int(threshold_sale)) + # if signal > 0: + # print '>' * 5, 'Buy now!', stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' + + stock.signal = signal + return stock + + except Exception as e: + print encode_wrap(stock.name), str(e) + stock = Stock() + return stock + +if __name__ == "__main__": + print ">>live trade begin" + main() + + sched = BlockingScheduler() + sched.add_job(main, 'cron', day_of_week='0-4', hour='9-12,13-15', minute='*/5') + + print ">>live trade end" diff --git a/trade_process/requirements.txt b/trade_process/requirements.txt new file mode 100644 index 0000000..c324d3f --- /dev/null +++ b/trade_process/requirements.txt @@ -0,0 +1,10 @@ +anyjson==0.3.3 +beautifulsoup4==4.6.0 +bs4==0.0.1 +request==0.0.13 +requests==2.14.2 +requests-file==1.4.2 +requests-ftp==0.3.13 +six==1.11.0 +win-unicode-console==0.5 +xlrd==0.9.3 diff --git a/trade_process/select_stock_center.py b/trade_process/select_stock_center.py index b019249..9f6ff48 100644 --- a/trade_process/select_stock_center.py +++ b/trade_process/select_stock_center.py @@ -1,75 +1,75 @@ -#!/usr/local/bin/python3 -#coding=utf-8 -#量化选股中心 - -from multiprocessing.dummy import Pool as ThreadPool - -from data_process.data_get import * -import trade_process.strategy.macd_live_test as MACD_LIVE_TEST -from util.stockutil import getSixDigitalStockCode - -stock_buy_list = [] -stock_sale_list = [] - -def select_stock_from_all_stocks(): - print '>>>开始筛选所有A股' - try: - df = pd.read_csv(cm.DownloadDir + cm.TABLE_STOCKS_BASIC + '.csv') - code_all_list = df['code'].get_values(); - #过滤停牌的股票 - code_list = code_all_list - - pool = ThreadPool(processes=20) - pool.map(evaluation_stock, code_list) - pool.close() - pool.join() - - except Exception as e: - print str(e) - - print '>>>结束筛选所有A股' - - -def evaluation_stock(code): - # 以上一交易日的收盘价为判断点 - - try: - #print 'evaluation', getSixDigitalStockCode(code), 'begin' - date_end = datetime.date.today() + datetime.timedelta(-1) - df = get_stock_k_line(code) - if df is None: - return - else: - nearest_date = df.head(1)['date'] - #print nearest_date - if str(nearest_date.values[0]) != str(date_end): - return - if len(df.index) > 30: - - maStrategy = MACD_LIVE_TEST.MAStrategy(df=df) - signal = maStrategy.select_Time_Mix() - if signal > 0: - #print stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' - print '>' * 5, 'Buy now!', getSixDigitalStockCode(code) - stock_buy_list.append(getSixDigitalStockCode(code)) - elif signal < 0: - #print stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' - print '>' * 5, 'Sale now!', getSixDigitalStockCode(code) - stock_sale_list.append(getSixDigitalStockCode(code)) - except Exception as e: - print str(e) - -if __name__ == "__main__": - select_stock_from_all_stocks() - #evaluation_stock('000001') - - - print '买入:' - for code in stock_buy_list: - stockInfo = get_stock_info(code) - print 'Buy:', code, stockInfo['name'] - - print '\n卖出:' - for code in stock_sale_list: - stockInfo = get_stock_info(code) +#!/usr/local/bin/python3 +#coding=utf-8 +#量化选股中心 + +from multiprocessing.dummy import Pool as ThreadPool + +from data_process.data_get import * +import trade_process.strategy.macd_live_test as MACD_LIVE_TEST +from util.stockutil import getSixDigitalStockCode + +stock_buy_list = [] +stock_sale_list = [] + +def select_stock_from_all_stocks(): + print '>>>开始筛选所有A股' + try: + df = pd.read_csv(cm.DownloadDir + cm.TABLE_STOCKS_BASIC + '.csv') + code_all_list = df['code'].get_values(); + #过滤停牌的股票 + code_list = code_all_list + + pool = ThreadPool(processes=20) + pool.map(evaluation_stock, code_list) + pool.close() + pool.join() + + except Exception as e: + print str(e) + + print '>>>结束筛选所有A股' + + +def evaluation_stock(code): + # 以上一交易日的收盘价为判断点 + + try: + #print 'evaluation', getSixDigitalStockCode(code), 'begin' + date_end = datetime.date.today() + datetime.timedelta(-1) + df = get_stock_k_line(code) + if df is None: + return + else: + nearest_date = df.head(1)['date'] + #print nearest_date + if str(nearest_date.values[0]) != str(date_end): + return + if len(df.index) > 30: + + maStrategy = MACD_LIVE_TEST.MAStrategy(df=df) + signal = maStrategy.select_Time_Mix() + if signal > 0: + #print stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' + print '>' * 5, 'Buy now!', getSixDigitalStockCode(code) + stock_buy_list.append(getSixDigitalStockCode(code)) + elif signal < 0: + #print stock.name, stock.current, (float(stock.current)-float(stock.close))/float(stock.close)*100, '%' + print '>' * 5, 'Sale now!', getSixDigitalStockCode(code) + stock_sale_list.append(getSixDigitalStockCode(code)) + except Exception as e: + print str(e) + +if __name__ == "__main__": + select_stock_from_all_stocks() + #evaluation_stock('000001') + + + print '买入:' + for code in stock_buy_list: + stockInfo = get_stock_info(code) + print 'Buy:', code, stockInfo['name'] + + print '\n卖出:' + for code in stock_sale_list: + stockInfo = get_stock_info(code) print 'Sale:', code, stockInfo['name'] \ No newline at end of file diff --git a/trade_process/stockdata/HS300.jpg b/trade_process/stockdata/HS300.jpg new file mode 100644 index 0000000..2e1fea7 Binary files /dev/null and b/trade_process/stockdata/HS300.jpg differ diff --git a/trade_process/stockdata/SPX500.jpg b/trade_process/stockdata/SPX500.jpg new file mode 100644 index 0000000..cdd3260 Binary files /dev/null and b/trade_process/stockdata/SPX500.jpg differ diff --git a/trade_process/stockdata/anxinB.jpg b/trade_process/stockdata/anxinB.jpg new file mode 100644 index 0000000..2e1bc59 Binary files /dev/null and b/trade_process/stockdata/anxinB.jpg differ diff --git a/trade_process/stockdata/eConsumption .jpg b/trade_process/stockdata/eConsumption .jpg new file mode 100644 index 0000000..66f089b Binary files /dev/null and b/trade_process/stockdata/eConsumption .jpg differ diff --git a/trade_process/stockdata/eGEI.jpg b/trade_process/stockdata/eGEI.jpg new file mode 100644 index 0000000..d87879a Binary files /dev/null and b/trade_process/stockdata/eGEI.jpg differ diff --git a/trade_process/stockdata/eHSI.jpg b/trade_process/stockdata/eHSI.jpg new file mode 100644 index 0000000..2c97e56 Binary files /dev/null and b/trade_process/stockdata/eHSI.jpg differ diff --git a/trade_process/stockdata/eNASDAQ100.jpg b/trade_process/stockdata/eNASDAQ100.jpg new file mode 100644 index 0000000..b4f667f Binary files /dev/null and b/trade_process/stockdata/eNASDAQ100.jpg differ diff --git a/trade_process/stockdata/eSSE50.jpg b/trade_process/stockdata/eSSE50.jpg new file mode 100644 index 0000000..63ec60d Binary files /dev/null and b/trade_process/stockdata/eSSE50.jpg differ diff --git a/trade_process/stockdata/egold.jpg b/trade_process/stockdata/egold.jpg new file mode 100644 index 0000000..f5ca692 Binary files /dev/null and b/trade_process/stockdata/egold.jpg differ diff --git a/trade_process/stockdata/eoil.jpg b/trade_process/stockdata/eoil.jpg new file mode 100644 index 0000000..3208ec3 Binary files /dev/null and b/trade_process/stockdata/eoil.jpg differ diff --git a/trade_process/strategy/BooLbands.py b/trade_process/strategy/BooLbands.py new file mode 100644 index 0000000..15d237b --- /dev/null +++ b/trade_process/strategy/BooLbands.py @@ -0,0 +1,203 @@ +# coding=utf-8 +from __future__ import division + +import os +import pandas as pd +import warnings + +warnings.filterwarnings("ignore") + + +# 计算复权价格 +def cal_right_price(input_stock_data, type='前复权'): + """ + :param input_stock_data: 标准股票数据,需要'收盘价', '涨跌幅' + :param type: 确定是前复权还是后复权,分别为'后复权','前复权' + :return: 新增一列'后复权价'/'前复权价'的stock_data + """ + # 计算收盘复权价 + stock_data = input_stock_data.copy() + num = {'后复权': 0, '前复权': -1} + price1 = stock_data['close'].iloc[num[type]] + stock_data['复权价_temp'] = (stock_data['change'] + 1.0).cumprod() + price2 = stock_data['复权价_temp'].iloc[num[type]] + stock_data['复权价'] = stock_data['复权价_temp'] * (price1 / price2) + stock_data.pop('复权价_temp') + + # 计算开盘复权价 + stock_data['复权价_开盘'] = stock_data['复权价'] / (stock_data['close'] / stock_data['open']) + stock_data['复权价_最高'] = stock_data['复权价'] / (stock_data['close'] / stock_data['high']) + stock_data['复权价_最低'] = stock_data['复权价'] / (stock_data['close'] / stock_data['low']) + + return stock_data[['复权价_开盘', '复权价', '复权价_最高', '复权价_最低']] + + +# 获取指定股票对应的数据并按日期升序排序 +def get_stock_data(stock_code): + """ + :param stock_code: 股票代码 + :return: 返回股票数据集(代码,日期,开盘价,收盘价,涨跌幅) + """ + # 此处为存放csv文件的本地路径,请自行改正地址 + stock_data = pd.read_csv('e:/data/stock data/' + str(stock_code) + '.csv', parse_dates=['date'], index_col='date') + stock_data = stock_data[['code', 'open', 'close', 'high', 'low', 'change']] + stock_data.sort_index(inplace=True) + + # 计算复权价 + stock_data[['open', 'close', 'high', 'low']] = cal_right_price(stock_data, type='后复权') + + stock_data = stock_data['2005-01-01':] + + return stock_data + + +# 计算布林带指标并得到信号和仓位 +def bands(stock_data, n=14): + + df = stock_data.copy() + + # 计算布林带的中轨线、上轨线和下轨线 + df['tp'] = (df['high'] + df['low'] + df['close']) / 3 + + df['middle'] = pd.rolling_mean(df['tp'], n) + df['sd'] = pd.rolling_std(df['tp'], n) + + df['up'] = df['middle'] + 2 * df['sd'] + df['down'] = df['middle'] - 2 * df['sd'] + + df.dropna(inplace=True) + + # 当收盘价上穿上轨线,买入,信号为1 + df.ix[df['close'] > df['up'], 'signal'] = 1 + # 当收盘价下穿下轨线,卖空,信号为-1 + df.ix[df['close'] < df['down'], 'signal'] = -1 + + df['signal'].fillna(method='ffill', inplace=True) + + # =====计算每天的仓位 + df.ix[0, 'position'] = 0 + # 出现买入信号而且第二天开盘没有涨停 + df.ix[(df['signal'].shift(1) == 1) & (df['open'] < df['close'].shift(1) * 1.097), 'position'] = 1 + # 出现卖出信号而且第二天开盘没有跌停 + df.ix[(df['signal'].shift(1) == -1) & (df['open'] > df['close'].shift(1) * 0.903), 'position'] = 0 + + df['position'].fillna(method='ffill', inplace=True) + + return df + + +# 根据每日仓位计算总资产的日收益率 +def account(df, slippage=1.0 / 1000, commision_rate=2.0 / 1000): + """ + :param df: 股票账户数据集 + :param slippage: 买卖滑点 默认为1.0 / 1000 + :param commision_rate: 手续费 默认为2.0 / 1000 + :return: 返回账户资产的日收益率和日累计收益率的数据集 + """ + df.ix[0, 'capital_rtn'] = 0 + # 当加仓时,计算当天资金曲线涨幅capital_rtn.capital_rtn = 昨天的position在今天涨幅 + 今天开盘新买入的position在今天的涨幅(扣除手续费) + df.ix[df['position'] > df['position'].shift(1), 'capital_rtn'] = (df['close'] / df['open'] - 1) * ( + 1 - slippage - commision_rate) * (df['position'] - df['position'].shift(1)) + df['change'] * df[ + 'position'].shift(1) + # 当减仓时,计算当天资金曲线涨幅capital_rtn.capital_rtn = 今天开盘卖出的positipn在今天的涨幅(扣除手续费) + 还剩的position在今天的涨幅 + df.ix[df['position'] < df['position'].shift(1), 'capital_rtn'] = (df['open'] / df['close'].shift(1) - 1) * ( + 1 - slippage - commision_rate) * (df['position'].shift(1) - df['position']) + df['change'] * df['position'] + # 当仓位不变时,当天的capital_rtn是当天的change * position + df.ix[df['position'] == df['position'].shift(1), 'capital_rtn'] = df['change'] * df['position'] + + return df + + +# 计算年化收益率函数 +def annual_return(date_line, capital_line): + """ + :param date_line: 日期序列 + :param capital_line: 账户价值序列 + :return: 输出在回测期间的年化收益率 + """ + # 将数据序列合并成dataframe并按日期排序 + df = pd.DataFrame({'date': date_line, 'capital': capital_line}) + + # 计算年化收益率 + annual = (df['capital'].iloc[-1] / df['capital'].iloc[0]) ** (250 / len(df)) - 1 + + return annual + + +# 计算最大回撤函数 +def max_drawdown(date_line, capital_line): + """ + :param date_line: 日期序列 + :param capital_line: 账户价值序列 + :return: 输出最大回撤及开始日期和结束日期 + """ + # 将数据序列合并为一个dataframe并按日期排序 + df = pd.DataFrame({'date': date_line, 'capital': capital_line}) + + df['max2here'] = pd.expanding_max(df['capital']) # 计算当日之前的账户最大价值 + df['dd2here'] = df['capital'] / df['max2here'] - 1 # 计算当日的回撤 + # 计算最大回撤和结束时间 + temp = df.sort_values(by='dd2here').iloc[0][['date', 'dd2here']] + max_dd = temp['dd2here'] + + return max_dd + + +# 遍历数据文件夹中所有股票文件的文件名,得到股票代码列表 +stock_code_list = [] +# 此处为股票数据文件的本地路径,请自行修改 +for root, dirs, files in os.walk('e:/data/stock data'): + if files: + for f in files: + if '.csv' in f: + stock_code_list.append(f.split('.csv')[0]) + + +for code in stock_code_list[2000:]: + + stock_data = get_stock_data(code) + + # 剔除上市不到1年半的股票 + if len(stock_data) < 360: + continue + + re = pd.DataFrame(columns=['code', 'start', 'param', 'stock_rtn', 'stock_md', 'strategy_rtn', + 'strategy_md', 'excessive_rtn']) + i = 0 + + for p in range(10, 31, 2): + + df = bands(stock_data, n=p) + # 计算策略每天涨幅 + df = account(df, slippage=0, commision_rate=0) + # 计算资金曲线 + df['capital'] = (df['capital_rtn'] + 1).cumprod() + + # =====根据资金曲线,计算相关评价指标 + df = df['2006-01-01':] + date_line = list(df.index) + capital_line = list(df['capital']) + stock_line = list(df['close']) + # 股票的年化收益 + stock_rtn = annual_return(date_line, stock_line) + # 策略的年化收益 + strategy_rtn = annual_return(date_line, capital_line) + # 股票最大回撤 + stock_md = max_drawdown(date_line, stock_line) + # 策略最大回撤 + strategy_md = max_drawdown(date_line, capital_line) + + re.loc[i, 'code'] = df['code'].iloc[0] + re.loc[i, 'start'] = df.index[0].strftime('%Y-%m-%d') + re.loc[i, 'param'] = p + re.loc[i, 'stock_rtn'] = stock_rtn + re.loc[i, 'stock_md'] = stock_md + re.loc[i, 'strategy_rtn'] = strategy_rtn + re.loc[i, 'strategy_md'] = strategy_md + re.loc[i, 'excessive_rtn'] = strategy_rtn - stock_rtn + + i += 1 + + re.sort_values(by='excessive_rtn', ascending=False, inplace=True) + + re.iloc[0:1, :].to_csv('d:/results5.csv', mode='a', header=None, index=False) diff --git a/trade_process/strategy/__init__.py b/trade_process/strategy/__init__.py index 65d9a01..4c80e14 100644 --- a/trade_process/strategy/__init__.py +++ b/trade_process/strategy/__init__.py @@ -1,4 +1,4 @@ -from trade_process.strategy.macd_back_test import * -from trade_process.strategy.macd_live_test import * -from trade_process.strategy.strategy_macd import * - +# from trade_process.strategy.macd_back_test import * +# from trade_process.strategy.macd_live_test import * +# from trade_process.strategy.strategy_macd import * + diff --git a/trade_process/strategy/__init__.pyc b/trade_process/strategy/__init__.pyc new file mode 100644 index 0000000..a0e2343 Binary files /dev/null and b/trade_process/strategy/__init__.pyc differ diff --git a/trade_process/strategy/macd_back_test.py b/trade_process/strategy/macd_back_test.py index 2be2045..2d707b8 100644 --- a/trade_process/strategy/macd_back_test.py +++ b/trade_process/strategy/macd_back_test.py @@ -1,609 +1,864 @@ -#!/usr/local/bin/python -#coding=utf-8 - -#回测均线策略 - -import pandas as pd -import matplotlib.pyplot as plt -import os -import numpy as np - -AVR_SHORT = 12 -AVR_LONG = 40 - -SIGNAL_BUY = 1 #买 -SIGNAL_SALE = -1 #卖 -SIGNAL_DEFAULT = 0 - - -# 导入csv股票数据,写5日、20日、60日移动平均线 -def processEMA(stockCsvPath, stockCsvNewPath): - #导入数据,stockCsvPath为在电脑中的路径 - stock_data = pd.read_csv(stockCsvPath) - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - #=====================计算移动平均线 - - # 分别计算5日、20日、60日移动平均线 - ma_list = [5, 20, 60] - - # 计算简单算术移动平均线MA - 注意:stock_data['close']为股票每条的收盘价 - for ma in ma_list: - stock_data['MA_' + str(ma)] = pd.rolling_mean(stock_data['Adj Close'], ma) - - # 计算指数平滑移动平均线EMA - for ma in ma_list: - stock_data['EMA_' + str(ma)] = pd.ewma(stock_data['Adj Close'], span=ma) - - # 将数据按照交易日期从近到远排序 - stock_data.sort('Date', ascending=False, inplace=True) - - stock_data['DIF'] = stock_data['EMA_'+str(ma_list[0])] - stock_data['EMA_'+str(ma_list[-1])] - stock_data['DEA_' + str(10)] = pd.ewma(stock_data['DIF'], span=10) - - # =================================== 将算好的数据输出到csv文件,这里请填写输出文件在您电脑的路径 - stock_data.to_csv(stockCsvNewPath, index=False) - -# 自适应均线 -def self_adaptive_ma(stock_data): - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - high_price = stock_data['High'].get_values() - low_price = stock_data['Low'].get_values() - longDay = 100 - - print len(close_price) - if len(close_price) < 100: - return - - print close_price[-10:-1] - direction = abs(close_price[-1] - close_price[-10]) - volatility = sum(abs(close_price[i+1]-close_price[i]) for i in range(-9,0)) - ER = abs(direction/volatility) - fastSC = 2.0/(2.0+1) - slowSC = 2.0/(30.0+1) - sSC = ER * (fastSC-slowSC) + slowSC - constaint = sSC*sSC - - #EMA 100 - ema_close_100 = pd.ewma(close_price, span=longDay) - ema_high_100 = pd.ewma(high_price, span=longDay) - ema_low_100 = pd.ewma(low_price, span=longDay) - - amaClose = ema_close_100[-1] + constaint * (close_price[-1] - ema_close_100[-1]) - amaHigh = ema_high_100[-1] + constaint * (high_price[-1] - ema_high_100[-1]) - amaLow = ema_low_100[-1] + constaint * (low_price[-1] - ema_low_100[-1]) - print ema_close_100[-1], ema_high_100[-1], ema_low_100[-1] - - BKPRICE = 0.0 - SKPRICE = float('Inf') - status = SIGNAL_DEFAULT - print high_price[-1], low_price[-1], close_price[-1] - if low_price[-1] > amaHigh: - status = SIGNAL_BUY - elif close_price[-1] < amaClose or close_price[-1] <= 0.995 * BKPRICE: - status = SIGNAL_BUY - elif high_price[-1] < amaLow: - status = SIGNAL_SALE - elif close_price[-1] > amaClose or close_price[-1] >= 1.005 * SKPRICE: - status = SIGNAL_SALE - - return status - - -# MA指标择时 (回测) -def select_Time_MA(stock_data, stockName): - - start_money = 100000000 - now_count = 0 - now_money = start_money - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - - #EMA - ma_list = [AVR_SHORT, AVR_LONG] - ema_close_short = pd.ewma(close_price, span=ma_list[0]) - ema_close_long = pd.ewma(close_price, span=ma_list[1]) - - signals = [0]*(ma_list[1]+1) - tradeTimes = 0 - bBuySignal = True - for t in range(ma_list[1]+1, len(close_price)): - - signal = SIGNAL_DEFAULT - - if ema_close_short[t] > ema_close_short[t-1] and ema_close_short[t] > ema_close_long[t] \ - and ema_close_short[t-1] < ema_close_long[t-1]: - if bBuySignal: - signal = SIGNAL_BUY - now_count = (int)(start_money / close_price[t] /100)*100 - now_money = start_money - now_count * close_price[t] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = False - elif ema_close_long[t] < ema_close_long[t-1] and ema_close_short[t] < ema_close_long[t] \ - and ema_close_short[t-1] > ema_close_long[t-1]: - if bBuySignal == False: - signal = SIGNAL_SALE - now_money += now_count * close_price[t] - now_count = 0 - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = True - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - - print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ - u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_MA'] = signals - -# fig = plt.figure(facecolor='white') -# left, width = 0.1, 0.8 -# rect1 = [left, 0.5, width, 0.4] -# rect2 = [left, 0.1, width, 0.3] -# -# axescolor = '#f6f6f6' # the axes background color -# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height -# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) -# -# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) -# ax1.grid() -# ax2.plot(range(len(ema_close_long)), ema_close_long,label='', color="red", linewidth=1) -# ax2.plot(range(len(ema_close_short)), ema_close_short,label='', color="blue", linewidth=1) -# ax2.grid() - #plt.show() - - # 将数据按照交易日期从近到远排序 - #stock_data.sort('date', ascending=False, inplace=True) - -# MACD指标择时 (回测) -def select_Time_MACD(stock_data, stockName): - - start_money = 100000000 - now_count = 0 - now_money = start_money - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - - #EMA - ma_list = [AVR_SHORT, AVR_LONG] - ma_dea = 10 - ema_close_short = pd.ewma(close_price, span=ma_list[0]) - ema_close_long = pd.ewma(close_price, span=ma_list[1]) - - - dif_price = ema_close_short - ema_close_long - dea_price = pd.ewma(dif_price, span=ma_dea) - macd_price = 2 * (dif_price - dea_price) - - signals = [0]*(ma_list[1]+1) - tradeTimes = 0 - bBuySignal = True - for t in range(ma_list[1]+1, len(close_price)): - - signal = SIGNAL_DEFAULT - - if dif_price[t] > dif_price[t-1] and dif_price[t] > dea_price[t] \ - and dif_price[t-1] < dea_price[t-1] and dea_price[t] > 0: - if bBuySignal: - signal = SIGNAL_BUY - now_count = (int)(now_money / close_price[t] /100)*100 - now_money = start_money - now_count * close_price[t] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = False - elif dif_price[t] < dif_price[t-1] and dif_price[t] < dea_price[t] \ - and dif_price[t-1] > dea_price[t-1] and dif_price[t] < 0: - if bBuySignal == False: - signal = SIGNAL_SALE - now_money += now_count * close_price[t] - now_count = 0 - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = True - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - - - print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ - u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_MACD'] = signals - -# fig = plt.figure(facecolor='white') -# left, width = 0.1, 0.8 -# rect1 = [left, 0.5, width, 0.4] -# rect2 = [left, 0.1, width, 0.3] -# -# axescolor = '#f6f6f6' # the axes background color -# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height -# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) -# -# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) -# ax1.grid() -# ax2.plot(range(len(dif_price)), ema_close_long,label='', color="red", linewidth=1) -# ax2.plot(range(len(dea_price)), ema_close_short,label='', color="blue", linewidth=1) -# ax2.grid() - #plt.show() - - # 将数据按照交易日期从近到远排序 - #stock_data.sort('date', ascending=False, inplace=True) - - return dif_price, dea_price, macd_price - -# DMA指标择时 (回测) -def select_Time_DMA(stock_data, stockName): - - start_money = 100000000 - now_count = 0 - now_money = start_money - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - - #MA - ma_list = [AVR_SHORT, AVR_LONG] - ma_dea = 10 - ma_close_short = pd.rolling_mean(close_price, ma_list[0]) - ma_close_long = pd.rolling_mean(close_price, ma_list[1]) - - - dma_price = ma_close_short - ma_close_long - ama_price = pd.rolling_mean(dma_price, ma_dea) - - signals = [0]*(ma_list[1]+1) - tradeTimes = 0 - bBuySignal = True - for t in range(ma_list[1]+1, len(close_price)): - - signal = SIGNAL_DEFAULT - - if dma_price[t] > dma_price[t-1] and dma_price[t] > ama_price[t] \ - and dma_price[t-1] < ama_price[t-1]: - if bBuySignal: - signal = SIGNAL_BUY - now_count = (int)(now_money / close_price[t] /100)*100 - now_money = start_money - now_count * close_price[t] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = False - elif dma_price[t] < dma_price[t-1] and dma_price[t] < ama_price[t] \ - and dma_price[t-1] > ama_price[t-1]: - if bBuySignal == False: - signal = SIGNAL_SALE - now_money += now_count * close_price[t] - now_count = 0 - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = True - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - - - print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ - u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_DMA'] = signals - -# fig = plt.figure(facecolor='white') -# left, width = 0.1, 0.8 -# rect1 = [left, 0.5, width, 0.4] -# rect2 = [left, 0.1, width, 0.3] -# -# axescolor = '#f6f6f6' # the axes background color -# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height -# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) -# -# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) -# ax1.grid() -# ax2.plot(range(len(dma_price)), dma_price,label='', color="red", linewidth=1) -# ax2.plot(range(len(ama_price)), ama_price,label='', color="blue", linewidth=1) -# ax2.grid() - #plt.show() - - # 将数据按照交易日期从近到远排序 - #stock_data.sort('date', ascending=False, inplace=True) - -# DMA指标择时 (回测) -def select_Time_TRIX(stock_data, stockName): - - start_money = 100000000 - now_count = 0 - now_money = start_money - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - - #EMA - ma_list = [AVR_SHORT, AVR_SHORT] #N,M - - ema_close = pd.ewma(close_price, span=ma_list[0]) - ema_close = pd.ewma(ema_close, span=ma_list[0]) - tr_close = pd.ewma(ema_close, span=ma_list[0]) - - trixsList = [0] - for i in range(1, len(tr_close)): - #print tr_close[i], tr_close[i-1] - trix = (tr_close[i]-tr_close[i-1])/tr_close[i-1]*100 - trixsList.append(trix) - trixs = np.array(trixsList) - maxtrix = pd.rolling_mean(trixs, ma_list[1]) - - - signals = [0]*(ma_list[1]+1) - tradeTimes = 0 - bBuySignal = True - for t in range(ma_list[1]+1, len(close_price)): - - signal = SIGNAL_DEFAULT - - if trixs[t] > trixs[t-1] and trixs[t] > maxtrix[t] \ - and trixs[t-1] < maxtrix[t-1]: - if bBuySignal: - signal = SIGNAL_BUY - now_count = (int)(now_money / close_price[t] /100)*100 - now_money = start_money - now_count * close_price[t] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = False - elif trixs[t] < trixs[t-1] and trixs[t] < maxtrix[t] \ - and trixs[t-1] > maxtrix[t-1]: - if bBuySignal == False: - signal = SIGNAL_SALE - now_money += now_count * close_price[t] - now_count = 0 - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = True - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - - - print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ - u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_TRIX'] = signals - - -# 组合择时指标 (回测) -def select_Time_Mix(stock_data, stockName): - - start_money = 100000000 - now_count = 0 - now_money = start_money - - # 综合策略 - signals = [] - tradeTimes = 0 - bBuySignal = True - - close_price = stock_data['Adj Close'].get_values() - s_ma = stock_data['SIGNAL_MA'].get_values() - s_macd = stock_data['SIGNAL_MACD'].get_values() - s_dma = stock_data['SIGNAL_DMA'].get_values() - s_trix = stock_data['SIGNAL_TRIX'].get_values() - - for i in range(len(s_ma)): - - signal = SIGNAL_DEFAULT - - up = 0; - down = 0; - if s_ma[i] == 1: - up += 1 - elif s_ma[i] == -1: - down += 1 - - if s_macd[i] == 1: - up += 1 - elif s_macd[i] == -1: - down += 1 - - if s_dma[i] == 1: - up += 1 - elif s_dma[i] == -1: - down += 1 - - if s_trix[i] == 1: - up += 1 - elif s_trix[i] == -1: - down += 1 - - - if up >= 3: - if bBuySignal: - signal = SIGNAL_BUY - now_count = (int)(now_money / close_price[i] /100)*100 - now_money = start_money - now_count * close_price[i] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = False - elif down <= -3: - if bBuySignal == False: - signal = SIGNAL_SALE - now_money += now_count * close_price[i] - now_count = 0 - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - bBuySignal = True - - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ - u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_MIX'] = signals - -# AMA指标择时 -def select_Time_AMA(stock_data, stockName): - - percentage = 0.1 - - start_money = 100000000 - now_count = 0 - now_money = 0 - one_hand = 10000 - - # 将数据按照交易日期从远到近排序 - stock_data.sort('Date', inplace=True) - - close_price = stock_data['Adj Close'].get_values() - - # 指数平滑序列 - containts = [0]*10 - for i in range(10, len(close_price)): - sub_price = close_price[i-10:i] - constaint = getConstaint(sub_price) - containts.append(constaint); - - ama_price = [close_price[0]] - for i in range(1, len(close_price)): - ama = containts[i-1] * close_price[i-1] + (1-containts[i-1])*ama_price[i-1] - ama_price.append(ama) - - signals = [0]*21 - tradeTimes = 0 - - record_buy = 0 - record_sale = [] - - # 从20天以后开始判断买卖点 - for i in range(21, len(ama_price)): - - signal = SIGNAL_DEFAULT - - #print np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i]) - threshold = percentage * np.std(np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i])) # 过滤器 - - if ama_price[i] - np.min(ama_price[i-5:i]) > threshold: - signal = SIGNAL_BUY - now_count += one_hand - record_buy += one_hand * close_price[i] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - elif np.max(ama_price[i-5:i]) - ama_price[i] > threshold: - signal = SIGNAL_SALE - if now_count > one_hand: - now_count -= one_hand - record_sale = one_hand * close_price[i] - #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money - signals.append(signal) - if signal != 0: - #print 't:', t, ' signal:', signal - tradeTimes += 1 - - # 成本 - print u'盈利', record_sale + now_count * close_price[-1] - record_buy - -# print stockName, u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ -# u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] - stock_data['SIGNAL_AMA'] = signals - - return ama_price - -# 获取平方平滑系数 -def getConstaint(prices): - direction = abs(prices[-1] - prices[0]) - volatility = sum(abs(prices[i+1]-prices[i]) for i in range(len(prices)-1)) - ER = abs(direction/volatility) - fastSC = 2.0/(2.0+1) - slowSC = 2.0/(30.0+1) - sSC = ER * (fastSC-slowSC) + slowSC - constaint = sSC*sSC - return constaint - -# 选择一种均线策略 -def getMAStrategy(stockCsvPath, stockName, strategyName='MACD'): - if os.path.exists(stockCsvPath) == False: - return - stock_data = pd.read_csv(stockCsvPath) - if strategyName == 'MACD': - return select_Time_MACD(stock_data, stockName) - elif strategyName == 'MA': - return select_Time_MA(stock_data, stockName) - elif strategyName == 'DMA': - return select_Time_DMA(stock_data, stockName) - elif strategyName == 'TRIX': - return select_Time_TRIX(stock_data, stockName) - elif strategyName == 'AMA': - return select_Time_AMA(stock_data, stockName) - -# 执行策略 -def run(stockCsvPath, stockName): - if os.path.exists(stockCsvPath) == False: - return - #stockCsvNewPath = stockName + '_macd.csv' - #processEMA(stockCsvPath, stockCsvNewPath) - stock_data = pd.read_csv(stockCsvPath) - #self_adaptive_ma(stock_data) - - print u'>>>>>>>>>>>>> MA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_MA(stock_data, stockName) - - print u'>>>>>>>>>>>>> MACD 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_MACD(stock_data, stockName) - - print u'>>>>>>>>>>>>> DMA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_DMA(stock_data, stockName) - - print u'>>>>>>>>>>>>> TRIX 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_TRIX(stock_data, stockName) - - print u'>>>>>>>>>>>>> 组合策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_Mix(stock_data, stockName) - - print u'>>>>>>>>>>>>> AMA策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_AMA(stock_data, stockName) - - print '\n' - -if __name__ == "__main__": - print "main begin" - stockList=['000725','000783','002167','002505','002600','300315','600000','600011','600048','601001'] - #stockList = ['000725'] - for stockName in stockList: -# if stockName != '002600': -# continue - stockCsvPath = os.path.pardir +"\\stockdata\\" + stockName + '.csv' - #stockCsvPath = stockName + '.csv' - if os.path.exists(stockCsvPath) == False: - continue - #stockCsvNewPath = stockName + '_macd.csv' - #processEMA(stockCsvPath, stockCsvNewPath) - stock_data = pd.read_csv(stockCsvPath) - #self_adaptive_ma(stock_data) - - print u'>>>>>>>>>>>>> MA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_MA(stock_data, stockName) - - print u'>>>>>>>>>>>>> MACD 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_MACD(stock_data, stockName) - - print u'>>>>>>>>>>>>> DMA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_DMA(stock_data, stockName) - - print u'>>>>>>>>>>>>> TRIX 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_TRIX(stock_data, stockName) - - print u'>>>>>>>>>>>>> 组合策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_Mix(stock_data, stockName) - - print u'>>>>>>>>>>>>> AMA策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' - select_Time_AMA(stock_data, stockName) - - print '\n' - print "main end" \ No newline at end of file +#!/usr/local/bin/python +# -*- coding: UTF-8 -*- + +#回测均线策略 + +import pandas as pd +import matplotlib.pyplot as plt +import os,sys +import numpy as np +from data_process.download_stock import downloadAllHistoryAShareData +# from trade_process import efund_mail2 +from pyevolve import G1DList, GSimpleGA, Selectors, Scaling +from pyevolve import Mutators, Initializators,GAllele +from data_process.dataDownloadByDongfangcf import downlaodDataBycode +reload(sys) +sys.setdefaultencoding('utf-8') +# import sys +# reload( sys ) +# sys.setdefaultencoding('gbk') +# AVR_SHORT = 12 +# AVR_LONG = 40 + +SIGNAL_BUY = 1 #买 +SIGNAL_SALE = -1 #卖 +SIGNAL_DEFAULT = 0 + + +# 导入csv股票数据,写5日、20日、60日移动平均线 +def processEMA(stockCsvPath, stockCsvNewPath): + #导入数据,stockCsvPath为在电脑中的路径 + stock_data = pd.read_csv(stockCsvPath) + + # 将数据按照交易日期从远到近排序 + stock_data.sort('Date', inplace=True) + + #=====================计算移动平均线 + + # 分别计算5日、20日、60日移动平均线 + ma_list = [5, 20, 60] + + # 计算简单算术移动平均线MA - 注意:stock_data['close']为股票每条的收盘价 + for ma in ma_list: + stock_data['MA_' + str(ma)] = pd.rolling_mean(stock_data['Adj Close'], ma) + + # 计算指数平滑移动平均线EMA + for ma in ma_list: + stock_data['EMA_' + str(ma)] = pd.ewma(stock_data['Adj Close'], span=ma) + + # 将数据按照交易日期从近到远排序 + stock_data.sort('Date', ascending=False, inplace=True) + + stock_data['DIF'] = stock_data['EMA_'+str(ma_list[0])] - stock_data['EMA_'+str(ma_list[-1])] + stock_data['DEA_' + str(10)] = pd.ewma(stock_data['DIF'], span=10) + + # =================================== 将算好的数据输出到csv文件,这里请填写输出文件在您电脑的路径 + stock_data.to_csv(stockCsvNewPath, index=False) + +# 自适应均线 +def self_adaptive_ma(stock_data,Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + + close_price = stock_data['Adj Close'].get_values() + high_price = stock_data['High'].get_values() + low_price = stock_data['Low'].get_values() + longDay = 100 + + print len(close_price) + if len(close_price) < 100: + return + + print close_price[-10:-1] + direction = abs(close_price[-1] - close_price[-10]) + volatility = sum(abs(close_price[i+1]-close_price[i]) for i in range(-9,0)) + ER = abs(direction/volatility) + fastSC = 2.0/(2.0+1) + slowSC = 2.0/(30.0+1) + sSC = ER * (fastSC-slowSC) + slowSC + constaint = sSC*sSC + + #EMA 100 + ema_close_100 = pd.ewma(close_price, span=longDay) + ema_high_100 = pd.ewma(high_price, span=longDay) + ema_low_100 = pd.ewma(low_price, span=longDay) + + amaClose = ema_close_100[-1] + constaint * (close_price[-1] - ema_close_100[-1]) + amaHigh = ema_high_100[-1] + constaint * (high_price[-1] - ema_high_100[-1]) + amaLow = ema_low_100[-1] + constaint * (low_price[-1] - ema_low_100[-1]) + print ema_close_100[-1], ema_high_100[-1], ema_low_100[-1] + + BKPRICE = 0.0 + SKPRICE = float('Inf') + status = SIGNAL_DEFAULT + print high_price[-1], low_price[-1], close_price[-1] + if low_price[-1] > amaHigh: + status = SIGNAL_BUY + elif close_price[-1] < amaClose or close_price[-1] <= 0.995 * BKPRICE: + status = SIGNAL_BUY + elif high_price[-1] < amaLow: + status = SIGNAL_SALE + elif close_price[-1] > amaClose or close_price[-1] >= 1.005 * SKPRICE: + status = SIGNAL_SALE + + return status + + +# MA指标择时 (回测) +def select_Time_MA(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + AVR_vLONG = Avg[2] + start_money = 100000000 + now_count = 0 + now_money = start_money + + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + close_price = stock_data['Adj Close'].get_values() + + #EMA + ma_list = [AVR_SHORT, AVR_LONG,AVR_vLONG] + ema_close_short = pd.ewma(close_price, span=ma_list[0]) + ema_close_long = pd.ewma(close_price, span=ma_list[1]) + ema_close_vlong = pd.ewma(close_price, span=ma_list[2]) + + signals = [0]*(ma_list[1]+1) + tradeTimes = 0 + bBuySignal = True + currentSignal=[] + for t in range(ma_list[1]+1, len(close_price)): + signal = SIGNAL_DEFAULT + if ema_close_short[t] > ema_close_short[t-1] and ema_close_short[t] >ema_close_vlong[t] \ + and ema_close_short[t-1] < ema_close_vlong[t-1]: + if bBuySignal: + signal = SIGNAL_BUY + now_count = (int)(start_money / close_price[t] /100)*100 + now_money = start_money - now_count * close_price[t] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = False + # elif ema_close_long[t] < ema_close_long[t-1] and ema_close_short[t] < ema_close_long[t] \ + # and ema_close_short[t-1] > ema_close_long[t-1]: + elif ema_close_short[t] < ema_close_short[t - 1] and ema_close_short[t] < ema_close_long[t] \ + and ema_close_short[t - 1] > ema_close_long[t - 1]: # + if bBuySignal == False: + signal = SIGNAL_SALE + now_money += now_count * close_price[t] + now_count = 0 + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = True + signals.append(signal) + if signal != 0: + # print 't:', str(stock_data.ix[t, 'Date']), ' signal:', signal + tradeTimes += 1 + if (t <= len(close_price)) and (t >= (len(close_price) - 4)): + currentSignal.append(['t:', str(stock_data.ix[t, 'Date']), ' signal:', signal]) + getmony=(now_money + now_count * close_price[-1] - start_money) / start_money + over=(getmony -(close_price[-1]-close_price[ma_list[1]+1])/close_price[ma_list[1]+1])*100 + print stockName[0],stockName[1], u"收益率:", getmony*100, '%\t'+ u'超收:',over, '%\t'\ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] ,str(Avg) + stock_data['SIGNAL_MA'] = signals + return [(now_money+now_count * close_price[-1]-start_money)/start_money*100,currentSignal,tradeTimes,over] +# fig = plt.figure(facecolor='white') +# left, width = 0.1, 0.8 +# rect1 = [left, 0.5, width, 0.4] +# rect2 = [left, 0.1, width, 0.3] +# +# axescolor = '#f6f6f6' # the axes background color +# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height +# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) +# +# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) +# ax1.grid() +# ax2.plot(range(len(ema_close_long)), ema_close_long,label='', color="red", linewidth=1) +# ax2.plot(range(len(ema_close_short)), ema_close_short,label='', color="blue", linewidth=1) +# ax2.grid() + #plt.show() + + # 将数据按照交易日期从近到远排序 + #stock_data.sort('date', ascending=False, inplace=True) + +# MACD指标择时 (回测) +def select_Time_MACD(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + AVR_vLONG = Avg[2] + start_money = 100000000 + now_count = 0 + now_money = start_money + + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + close_price = stock_data['Adj Close'].get_values() + + #EMA + ma_list = [AVR_SHORT, AVR_LONG,AVR_vLONG] + ma_dea = Avg[2] #10 默认9 + ema_close_short = pd.ewma(close_price, span=ma_list[0]) + ema_close_long = pd.ewma(close_price, span=ma_list[1]) + ema_close_vlong = pd.ewma(close_price, span=ma_list[2]) + + dif_price = ema_close_short - ema_close_long + dea_price = pd.ewma(dif_price, span=ma_dea) + macd_price = 2 * (dif_price - dea_price) + + signals = [0]*(ma_list[1]+1) + tradeTimes = 0 + bBuySignal = True + currentSignal=[] + for t in range(ma_list[1]+1, len(close_price)): + signal = SIGNAL_DEFAULT + if dif_price[t] > dif_price[t-1] and dif_price[t] > dea_price[t] \ + and dif_price[t-1] < dea_price[t-1] and dea_price[t] > 0: + if bBuySignal: + signal = SIGNAL_BUY + now_count = (int)(now_money / close_price[t] /100)*100 + now_money = start_money - now_count * close_price[t] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = False + elif dif_price[t] < dif_price[t-1] and dif_price[t] < dea_price[t] \ + and dif_price[t-1] > dea_price[t-1] and dif_price[t] < 0: + if bBuySignal == False: + signal = SIGNAL_SALE + now_money += now_count * close_price[t] + now_count = 0 + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = True + signals.append(signal) + if signal != 0: + #print 't:', str(stock_data.ix[t, 'Date']), ' signal:', signal + tradeTimes += 1 + if (t<=len(close_price))and(t>=(len(close_price)-4)): + currentSignal.append(['t:', str(stock_data.ix[t, 'Date']), ' signal:', signal]) + getmony = (now_money + now_count * close_price[-1] - start_money) / start_money + over = (getmony - (close_price[-1] - close_price[ma_list[1]+1]) / close_price[ma_list[1]+1]) * 100 + print stockName[0],stockName[1], u"收益率:", getmony*100, '%\t'+ u'超收:',over,'%\t' \ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] ,str(Avg) + stock_data['SIGNAL_MACD'] = signals + return [(now_money+now_count * close_price[-1]-start_money)/start_money*100,currentSignal,tradeTimes,over] +# fig = plt.figure(facecolor='white') +# left, width = 0.1, 0.8 +# rect1 = [left, 0.5, width, 0.4] +# rect2 = [left, 0.1, width, 0.3] +# +# axescolor = '#f6f6f6' # the axes background color +# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height +# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) +# +# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) +# ax1.grid() +# ax2.plot(range(len(dif_price)), ema_close_long,label='', color="red", linewidth=1) +# ax2.plot(range(len(dea_price)), ema_close_short,label='', color="blue", linewidth=1) +# ax2.grid() + #plt.show() + + # 将数据按照交易日期从近到远排序 + #stock_data.sort('date', ascending=False, inplace=True) + + # return dif_price, dea_price, macd_price + +# DMA指标择时 (回测) +def select_Time_DMA(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + AVR_vLONG = Avg[2] + start_money = 100000000 + now_count = 0 + now_money = start_money + + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + close_price = stock_data['Adj Close'].get_values() + + #MA + ma_list = [AVR_SHORT, AVR_LONG,AVR_vLONG] + ma_dea = Avg[2]#10 + ma_close_short = pd.rolling_mean(close_price, ma_list[0]) + ma_close_long = pd.rolling_mean(close_price, ma_list[1]) + ma_close_vlong = pd.rolling_mean(close_price, ma_list[2]) + + dma_price = ma_close_short - ma_close_long + ama_price = pd.rolling_mean(dma_price, ma_dea) + + signals = [0]*(ma_list[1]+1) + tradeTimes = 0 + bBuySignal = True + currentSignal=[] + for t in range(ma_list[1]+1, len(close_price)): + + signal = SIGNAL_DEFAULT + + if dma_price[t] > dma_price[t-1] and dma_price[t] > ama_price[t] \ + and dma_price[t-1] < ama_price[t-1]: + if bBuySignal: + signal = SIGNAL_BUY + now_count = (int)(now_money / close_price[t] /100)*100 + now_money = start_money - now_count * close_price[t] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = False + elif dma_price[t] < dma_price[t-1] and dma_price[t] < ama_price[t] \ + and dma_price[t-1] > ama_price[t-1]: + if bBuySignal == False: + signal = SIGNAL_SALE + now_money += now_count * close_price[t] + now_count = 0 + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = True + signals.append(signal) + if signal != 0: + #print 't:', str(stock_data.ix[t, 'Date']), ' signal:', signal + tradeTimes += 1 + if (t <= len(close_price)) and (t >= (len(close_price) - 4)): + currentSignal.append(['t:', str(stock_data.ix[t, 'Date']), ' signal:', signal]) + + print stockName[0],stockName[1], u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] ,str(Avg) + stock_data['SIGNAL_DMA'] = signals + return [(now_money + now_count * close_price[-1] - start_money) / start_money * 100,currentSignal,tradeTimes] +# fig = plt.figure(facecolor='white') +# left, width = 0.1, 0.8 +# rect1 = [left, 0.5, width, 0.4] +# rect2 = [left, 0.1, width, 0.3] +# +# axescolor = '#f6f6f6' # the axes background color +# ax1 = fig.add_axes(rect1, axisbg=axescolor) #left, bottom, width, height +# ax2 = fig.add_axes(rect2, axisbg=axescolor, sharex=ax1) +# +# ax1.plot(range(len(close_price)), close_price, color="black", linewidth=1) +# ax1.grid() +# ax2.plot(range(len(dma_price)), dma_price,label='', color="red", linewidth=1) +# ax2.plot(range(len(ama_price)), ama_price,label='', color="blue", linewidth=1) +# ax2.grid() + #plt.show() + + # 将数据按照交易日期从近到远排序 + #stock_data.sort('date', ascending=False, inplace=True) + +# DMA指标择时 (回测) +def select_Time_TRIX(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + start_money = 100000000 + now_count = 0 + now_money = start_money + + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + close_price = stock_data['Adj Close'].get_values() + + #EMA + ma_list = [AVR_SHORT, AVR_SHORT] #N,M + + ema_close = pd.ewma(close_price, span=ma_list[0]) + ema_close = pd.ewma(ema_close, span=ma_list[0]) + tr_close = pd.ewma(ema_close, span=ma_list[0]) + + trixsList = [0] + for i in range(1, len(tr_close)): + #print tr_close[i], tr_close[i-1] + trix = (tr_close[i]-tr_close[i-1])/tr_close[i-1]*100 + trixsList.append(trix) + trixs = np.array(trixsList) + maxtrix = pd.rolling_mean(trixs, ma_list[1]) + + signals = [0]*(ma_list[1]+1) + tradeTimes = 0 + bBuySignal = True + currentSignal=[] + for t in range(ma_list[1]+1, len(close_price)): + + signal = SIGNAL_DEFAULT + if trixs[t] > trixs[t-1] and trixs[t] > maxtrix[t] \ + and trixs[t-1] < maxtrix[t-1]: + if bBuySignal: + signal = SIGNAL_BUY + now_count = (int)(now_money / close_price[t] /100)*100 + now_money = start_money - now_count * close_price[t] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = False + elif trixs[t] < trixs[t-1] and trixs[t] < maxtrix[t] \ + and trixs[t-1] > maxtrix[t-1]: + if bBuySignal == False: + signal = SIGNAL_SALE + now_money += now_count * close_price[t] + now_count = 0 + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = True + signals.append(signal) + if signal != 0: + #print 't:', str(stock_data.ix[t, 'Date']), ' signal:', signal + tradeTimes += 1 + if (t <= len(close_price)) and (t >= (len(close_price) - 4)): + currentSignal.append(['t:', str(stock_data.ix[t, 'Date']), ' signal:', signal]) + + print stockName[0],stockName[1], u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] ,str(Avg) + stock_data['SIGNAL_TRIX'] = signals + return [(now_money + now_count * close_price[-1] - start_money) / start_money * 100,currentSignal,tradeTimes] + +# 组合择时指标 (回测) +def select_Time_Mix(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + start_money = 100000000 + now_count = 0 + now_money = start_money + + # 综合策略 + signals = [] + tradeTimes = 0 + bBuySignal = True + + close_price = stock_data['Adj Close'].get_values() + s_ma = stock_data['SIGNAL_MA'].get_values() + s_macd = stock_data['SIGNAL_MACD'].get_values() + s_dma = stock_data['SIGNAL_DMA'].get_values() + s_trix = stock_data['SIGNAL_TRIX'].get_values() + + for i in range(len(s_ma)): + + signal = SIGNAL_DEFAULT + + up = 0; + down = 0; + if s_ma[i] == 1: + up += 1 + elif s_ma[i] == -1: + down += 1 + + if s_macd[i] == 1: + up += 1 + elif s_macd[i] == -1: + down += 1 + + if s_dma[i] == 1: + up += 1 + elif s_dma[i] == -1: + down += 1 + + if s_trix[i] == 1: + up += 1 + elif s_trix[i] == -1: + down += 1 + + if up >= 3: + if bBuySignal: + signal = SIGNAL_BUY + now_count = (int)(now_money / close_price[i] /100)*100 + now_money = start_money - now_count * close_price[i] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = False + elif down <= -3: + if bBuySignal == False: + signal = SIGNAL_SALE + now_money += now_count * close_price[i] + now_count = 0 + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + bBuySignal = True + + signals.append(signal) + if signal != 0: + #print 't:', t, ' signal:', signal + tradeTimes += 1 + + print stockName[0],stockName[1], u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] + stock_data['SIGNAL_MIX'] = signals + return (now_money + now_count * close_price[-1] - start_money) / start_money * 100 +# AMA指标择时 +def select_Time_AMA(stock_data, stockName,*Avg): + AVR_SHORT = Avg[0] + AVR_LONG = Avg[1] + percentage = 0.1 + + start_money = 100000000 + now_count = 0 + now_money = 0 + one_hand = 10000 + + # 将数据按照交易日期从远到近排序 + # stock_data.sort('Date', inplace=True) + + close_price = stock_data['Adj Close'].get_values() + + # 指数平滑序列 + containts = [0]*10 + for i in range(10, len(close_price)): + sub_price = close_price[i-10:i] + constaint = getConstaint(sub_price) + containts.append(constaint); + + ama_price = [close_price[0]] + for i in range(1, len(close_price)): + ama = containts[i-1] * close_price[i-1] + (1-containts[i-1])*ama_price[i-1] + ama_price.append(ama) + + signals = [0]*21 + tradeTimes = 0 + + record_buy = 0 + record_sale = [] + + # 从20天以后开始判断买卖点 + for i in range(21, len(ama_price)): + signal = SIGNAL_DEFAULT + #print np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i]) + threshold = percentage * np.std(np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i])) # 过滤器 + + if ama_price[i] - np.min(ama_price[i-5:i]) > threshold: + signal = SIGNAL_BUY + now_count += one_hand + record_buy += one_hand * close_price[i] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + elif np.max(ama_price[i-5:i]) - ama_price[i] > threshold: + signal = SIGNAL_SALE + if now_count > one_hand: + now_count -= one_hand + record_sale = one_hand * close_price[i] + #print u"股票价格/持股数/剩余金额:",close_price[t], '/', now_count, '/', now_money + signals.append(signal) + if signal != 0: + # print 't:', str(stock_data.ix[i, 'Date']), ' signal:', signal + tradeTimes += 1 + + # 成本 + # print stockName[0],stockName[1],u'盈利', record_sale + now_count * close_price[-1] - record_buy + + print stockName[0],stockName[1], u"收益率:", (now_money+now_count * close_price[-1]-start_money)/start_money*100, '%\t' \ + u"交易次数", tradeTimes, u" 最新市值:", now_money+now_count * close_price[-1] ,str(Avg) + stock_data['SIGNAL_AMA'] = signals + # return ama_price + return (now_money + now_count * close_price[-1] - start_money) / start_money * 100 + +# 获取平方平滑系数 +def getConstaint(prices): + direction = abs(prices[-1] - prices[0]) + volatility = sum(abs(prices[i+1]-prices[i]) for i in range(len(prices)-1)) + ER = abs(direction/volatility) + fastSC = 2.0/(2.0+1) + slowSC = 2.0/(30.0+1) + sSC = ER * (fastSC-slowSC) + slowSC + constaint = sSC*sSC + return constaint + +# 选择一种均线策略 +def getMAStrategy(stockCsvPath, stockName, strategyName='MACD'): + if os.path.exists(stockCsvPath) == False: + return + stock_data = pd.read_csv(stockCsvPath) + if strategyName == 'MACD': + return select_Time_MACD(stock_data, stockName) + elif strategyName == 'MA': + return select_Time_MA(stock_data, stockName) + elif strategyName == 'DMA': + return select_Time_DMA(stock_data, stockName) + elif strategyName == 'TRIX': + return select_Time_TRIX(stock_data, stockName) + elif strategyName == 'AMA': + return select_Time_AMA(stock_data, stockName) + +def Grid_Constructor(numline,numParm,data): + alleles = GAllele.GAlleles() + for i in range(0, numline*numParm): + alleles.add(GAllele.GAlleleRange(data[i][0], data[i][1])) + return alleles + +def func(fitness,strategyName,stock_data, stockName): + def fitness_function(chromosome): + score = 0.0 + if fitness == 'abs': + if strategyName == 'MACD': + score = select_Time_MACD(stock_data, stockName, *chromosome)[0] + elif strategyName == 'MA': + score = select_Time_MA(stock_data, stockName, *chromosome)[0] + elif strategyName == 'DMA': + score = select_Time_DMA(stock_data, stockName, *chromosome)[0] + elif strategyName == 'TRIX': + score = select_Time_TRIX(stock_data, stockName, *chromosome)[0] + elif strategyName == 'AMA': + score = select_Time_AMA(stock_data, stockName, *chromosome) + return score + return fitness_function +def cal_opt(numParm,fintness,strategyName,func,stock_data, stockName): + if (strategyName == 'MACD' or strategyName == 'DMA')and 'Low' in stock_data.columns: + datarange = [[8, 15], [21, 31], [6, 12]] + elif (strategyName == 'MACD' or strategyName == 'DMA')and 'Low' not in stock_data.columns: + datarange = [[3, 20], [21, 41], [5, 20]] + else: + datarange=[[2,5],[6,19],[7,60]] + datarange=datarange[:numParm] + genome = G1DList.G1DList(numParm) + genome.evaluator.set(func(fintness,strategyName,stock_data, stockName)) + # genome.setParams(allele=Grid_Constructor(numline,data1)) + genome.setParams(allele=Grid_Constructor(1,numParm,datarange)) + genome.initializator.set(Initializators.G1DListInitializatorAllele) + genome.mutator.set(Mutators.G1DListMutatorAllele) + + ga = GSimpleGA.GSimpleGA(genome, seed=400) + ga.setPopulationSize(40) + ga.setGenerations(40) + ga.setCrossoverRate(0.8) + ga.setMutationRate(0.18) + ga.selector.set(Selectors.GRankSelector) + # ga.terminationCriteria.set(GSimpleGA.FitnessStatsCriteria) + # Change the scaling method + pop = ga.getPopulation() + pop.scaleMethod.set(Scaling.SigmaTruncScaling) + ga.evolve(freq_stats=10) + best = ga.bestIndividual() + return [best.genomeList,round(best.score,5)] +# 执行策略 +def run(stockCsvPath, stockName): + if os.path.exists(stockCsvPath) == False: + return + stockCsvNewPath = stockName + '_macd.csv' + processEMA(stockCsvPath, stockCsvNewPath) + stock_data = pd.read_csv(stockCsvPath) + self_adaptive_ma(stock_data) + + print u'>>>>>>>>>>>>> MA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_MA(stock_data, stockName) + + print u'>>>>>>>>>>>>> MACD 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_MACD(stock_data, stockName) + + print u'>>>>>>>>>>>>> DMA 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_DMA(stock_data, stockName) + + print u'>>>>>>>>>>>>> TRIX 策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_TRIX(stock_data, stockName) + + print u'>>>>>>>>>>>>> 组合策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_Mix(stock_data, stockName) + + print u'>>>>>>>>>>>>> AMA策略 >>>>>>>>>>>>>>>>>>>>>>>>>>' + select_Time_AMA(stock_data, stockName) + + print '\n' +def match(select_method,stockName,lines): + contmatch=[] + for line in lines: + if line != '\n': + # print str(line.split('|')) + if(stockName[0] == line.split('|')[1])and(select_method == line.split('|')[0]): + contmatch.append([line.split('|')[0],line.split('|')[3]]) + return contmatch +def macdmain(stockName,fundlist): + print "main begin" + # stockList = ['000725', '000783', '002167', '002505', '002600', '300315', '600000', '600011', '600048', '601001'] + # downloadAllHistoryAShareData(stockList) + # stockList = ['000725'] + buysell=[] + # for stockName in stockList: + # if stockName != '002600': + # continue + # stockCsvPath = os.path.pardir + "\\stockdata\\" + stockName + '.csv' + # stockCsvPath = stockName + '.csv' + # if os.path.exists(stockCsvPath) == False: + # continue + # stockCsvNewPath = stockName + '_macd.csv' + # processEMA(stockCsvPath, stockCsvNewPath) + # stock_data = pd.read_csv(stockCsvPath) + stockTxtNewPath = "./stockdata/"+ 'GAOpt100.txt' + # fundlist = efund_mail2.get_histrydata(stockName, 180) + stock_data = pd.DataFrame(fundlist[:200][::-1], columns=['Date', 'Adj Close', 'countclose', 'change']) + # self_adaptive_ma(stock_data) + #period_type = 'w' + #stock_data = stock_data.resample(period_type,how='last') + #stock_data = + + Avg1=([3,8,40]) + # select_method=['MA','MACD','DMA','TRIX','AMA'] + select_method = ['MA','MACD'] + AvgParm=[] + cal='' + for i in select_method: + file_to_read=open(stockTxtNewPath, 'r') + lines = file_to_read.readlines() # 整行读取数据 + if not lines: + break + pass + else: + contmatch=match(i,stockName,lines) + if (cal=='new')and(len(contmatch)==0): + best=cal_opt(3, 'abs', i, func, stock_data, stockName) + # AvgParm.append(best) + f = open(stockTxtNewPath, 'a') + f.write(str(i)+'|') + f.write(str(stockName[0])+'|'+stockName[1].encode('gb2312')+'|') + f.write(str(best[0]).split('[')[1].split(']')[0]+'|'+str(best[1])) + f.write('\n') + f.close() + Avg = best[0] + if len(contmatch)!=0: + Avg = [int(contmatch[0][1].split(',')[0]),int(contmatch[0][1].split(',')[1]),int(contmatch[0][1].split(',')[2])] + elif (len(contmatch)==0)and(i != 'MA'): + Avg = ([12, 26, 9]) + elif (len(contmatch)==0)and(i == 'MA'): + Avg = ([3, 8, 44]) + result=None + if(i=='MA'): + print u'-- MA 策略 --' + result=select_Time_MA(stock_data, stockName,*Avg) + if(len(result[1])): + buysell.append([stockName,i,result]) + if (i == 'MACD'): + print u'-- MACD 策略 --' + result=select_Time_MACD(stock_data, stockName, *Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + if (i == 'DMA'): + print u'-- DMA 策略 --' + result=select_Time_DMA(stock_data, stockName,*Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + if (i == 'TRIX'): + print u'-- TRIX 策略 -->' + result=select_Time_TRIX(stock_data, stockName,*Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + + # print u'-- 组合策略 --' + # select_Time_Mix(stock_data, stockName,*Avg) + # + # print u'-- AMA策略 --' + # select_Time_AMA(stock_data, stockName,*Avg) + # print '\n' + print "main end" + return buysell +def mainStock(): + file = {'stockcodewangyiShangz.txt': 0, + 'stockcodewangyiShenz.txt': 1} # 'stockcodewangyiqdii.txt':'','stockcodewangyidetail.txt':'' + buysell=[] + stockTxtNewPath = "./stockdata/" + 'GAOpt100.txt' + stockTxtNewPath = "./stockdata/" + 'GAOpt100.txt' + for jj in file: + CodeList = [] + stockTxtNewPath1 = "./stockdata/" + jj #r'E:\03IT\GitHub\stock-2' + + file_to_read = open(stockTxtNewPath1, 'r') + lines = file_to_read.readlines() # 整行读取数据 + if not lines: + pass + else: + for line in lines: + if line != '\n' and line != ' ': + if jj == 'stockcodewangyidetail.txt': + icode = line.split(' ') + else: + icode = line.split('\t') + CodeList.append([icode[1],icode[2].decode('gbk')]) + # 抓取数据并保存到本地csv文件 + for stockName in CodeList: + if not ' ' in stockName[0]: + # stockCsvPath = r'E:\03IT\GitHub\stock-2' + "\\stockdata\\dongfangcf\\" + stockName[0] + '.csv' + stockCsvPath=downlaodDataBycode(stockName[0],jj) + # stockCsvPath = stockName + '.csv' + if os.path.exists(stockCsvPath) == False: + continue + else: + stockCsvNewPath = stockName[0] + '.csv' + # processEMA(stockCsvPath, stockCsvNewPath) + stock_data = pd.read_csv(stockCsvPath,encoding="gb2312") + if len(stock_data)<3: + continue + else: + columns1 = ['Date', 'Adj Close', 'High', 'Low'] + stock_data = pd.DataFrame(stock_data.loc[:,[u'日期', u'收盘价', u'最高价', u'最低价']], columns=['日期', '收盘价', '最高价', '最低价']) + stock_data.columns=columns1 + stock_data['Date'] = pd.to_datetime(stock_data['Date']) + stock_data=pd.DataFrame(stock_data.values[::-1],columns=columns1) + select_method = ['MA', 'MACD'] + cal = '' + for i in select_method: + file_to_read = open(stockTxtNewPath, 'r') + lines = file_to_read.readlines() # 整行读取数据 + if not lines: + contmatch =[] + else: + contmatch = match(i, stockName, lines) + if (cal == 'new') or (len(contmatch) == 0): + best = cal_opt(3, 'abs', i, func, stock_data, stockName) + # AvgParm.append(best) + f = open(stockTxtNewPath, 'a') + f.write(str(i) + '|') + f.write(str(stockName[0]) + '|' + stockName[1].encode('gbk') + '|') + f.write(str(best[0]).split('[')[1].split(']')[0] + '|' + str(best[1])) + f.write('\n') + f.close() + Avg = ([2, 8, 40])#best[0] + if len(contmatch) != 0: + Avg = [int(contmatch[0][1].split(',')[0]), int(contmatch[0][1].split(',')[1]), + int(contmatch[0][1].split(',')[2])] + elif (len(contmatch) == 0) and (i != 'MA'): + Avg = ([12, 26, 9]) + elif (len(contmatch) == 0) and (i == 'MA'): + Avg = ([2, 8, 40]) + result = None + if (i == 'MA'): + print u'-- MA 策略 --' + result = select_Time_MA(stock_data, stockName, *Avg) + # self_adaptive_ma(stock_data, Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + if (i == 'MACD'): + print u'-- MACD 策略 --' + result = select_Time_MACD(stock_data, stockName, *Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + if (i == 'DMA'): + print u'-- DMA 策略 --' + result = select_Time_DMA(stock_data, stockName, *Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + if (i == 'TRIX'): + print u'-- TRIX 策略 -->' + result = select_Time_TRIX(stock_data, stockName, *Avg) + if (len(result[1])): + buysell.append([stockName, i, result]) + + # print u'-- 组合策略 --' + # select_Time_Mix(stock_data, stockName,*Avg) + # + # print u'-- AMA策略 --' + # select_Time_AMA(stock_data, stockName,*Avg) + print '\n' + print "main end" + return buysell +if __name__ == "__main__": + print "main begin" + buysellstock= mainStock() + print buysellstock + stockList=['000725','000783','002167','002505','002600','300315','600000','600011','600048','601001'] + # downloadAllHistoryAShareData(stockList) + for stockName in stockList: + stockCsvPath = os.path.pardir +"\\stockdata\\" + stockName + '.csv' + #stockCsvPath = stockName + '.csv' + if os.path.exists(stockCsvPath) == False: + continue + #stockCsvNewPath = stockName + '_macd.csv' + #processEMA(stockCsvPath, stockCsvNewPath) + stock_data = pd.read_csv(stockCsvPath) + #self_adaptive_ma(stock_data) + Avg=[5,10,40] + print u'-- MA 策略 --' + select_Time_MA(stock_data, stockName,Avg) + + print u'-- MACD 策略 --' + select_Time_MACD(stock_data, stockName,Avg) + + print u'-- DMA 策略 --' + select_Time_DMA(stock_data, stockName,Avg) + + print u'-- TRIX 策略 -->' + select_Time_TRIX(stock_data, stockName,Avg) + + print u'-- 组合策略 --' + select_Time_Mix(stock_data, stockName,Avg) + + print u'-- AMA策略 --' + select_Time_AMA(stock_data, stockName,Avg) + + print '\n' + print "main end" diff --git a/trade_process/strategy/macd_back_test.pyc b/trade_process/strategy/macd_back_test.pyc new file mode 100644 index 0000000..0fbd226 Binary files /dev/null and b/trade_process/strategy/macd_back_test.pyc differ diff --git a/trade_process/strategy/macd_live_test.py b/trade_process/strategy/macd_live_test.py index 1199873..2100f27 100644 --- a/trade_process/strategy/macd_live_test.py +++ b/trade_process/strategy/macd_live_test.py @@ -1,252 +1,288 @@ -#!/usr/local/bin/python -#coding=utf-8 - -#实时均线策略 - -import pandas as pd -import numpy as np -from data_process.data_calcute import calcute_ma - -from init import * -from util.codeConvert import GetNowDate -from copy import deepcopy - - -class MAStrategy: - - # df: DataFrame - def __init__(self, code, trade, df_close): - """ - :param code: 股票代码 - :param trade: 实时股价, float - :param df_close: 收盘价序列,已排序, columns=['date', 'close'] - """ - - self.AVR_SHORT = AVR_SHORT - self.AVR_LONG = AVR_LONG - self.MA_DEA = 10 - - self.COL_MA_S = 'ma_{}'.format(self.AVR_SHORT) - self.COL_MA_L = 'ma_{}'.format(self.AVR_LONG) - self.COL_EMA_S = 'ema_{}'.format(self.AVR_SHORT) - self.COL_EMA_L = 'ema_{}'.format(self.AVR_LONG) - - - #方式二 - # 将数据按照交易日期从远到近排序 - # df.sort(columns='date', inplace=True) - - df_close = calcute_ma(df_close, AVR_SHORT, AVR_LONG) - - if trade: #有实时股价 - df_now = deepcopy(df_close.tail(1)) - df_now['date'] = GetNowDate() - df_now['close'] = trade - df_close = pd.concat([df_close, df_now], ignore_index=True) - # print df_close.tail() - - #计算当前日期的ma - lastest_ma_short = sum(df_close['close'][-self.AVR_SHORT:])/self.AVR_SHORT - lastest_ma_long = sum(df_close['close'][-self.AVR_LONG:])/self.AVR_LONG - - df_last = df_close[-1:] - df_last[self.COL_MA_S] = lastest_ma_short - df_last[self.COL_MA_L] = lastest_ma_long - - - #计算当前的ema - lastest_ema_short = df_close[self.COL_EMA_S].get_values()[-2] * (self.AVR_SHORT-1)/(self.AVR_SHORT+1) + trade * 2 /(self.AVR_SHORT+1) - lastest_ema_long = df_close[self.COL_EMA_L].get_values()[-2] * (self.AVR_LONG-1)/(self.AVR_LONG+1) + trade * 2 /(self.AVR_LONG+1) - - df_last[self.COL_EMA_S] = lastest_ema_short - df_last[self.COL_EMA_L] = lastest_ema_long - - self.df_close = df_close - - # print self.df_close.head() - # print self.df_close.tail() - - - - # 组合择时指标 (实时) - def select_Time_Mix(self, conditionBuy = 2, conditonSale = 2): - - # 综合策略 - signalMA = self.select_Time_MA() - signalMACD = self.select_Time_MACD() - signalDMA = self.select_Time_DMA() - signalTRIX = self.select_Time_TRIX() - signalAMA = self.select_Time_AMA() - - # 买入信号的总数 - buyTotal = (abs(signalMA)+signalMA)/2 + (abs(signalMACD)+signalMACD)/2 + \ - (abs(signalDMA)+signalDMA)/2 + (abs(signalTRIX)+signalTRIX)/2 + (abs(signalAMA)+signalAMA)/2 - - # 卖出信号的总数 - saleTotal = (-abs(signalMA)+signalMA)/2 + (-abs(signalMACD)+signalMACD)/2 + \ - (-abs(signalDMA)+signalDMA)/2 + (-abs(signalTRIX)+signalTRIX)/2 + (-abs(signalAMA)+signalAMA)/2 - - signal = SIGNAL_DEFAULT - if buyTotal+saleTotal >= conditionBuy: - signal = SIGNAL_BUY - elif buyTotal+saleTotal <= -conditonSale: - signal = SIGNAL_SALE - - return signal - - # MA指标择时 - def select_Time_MA(self): - - #DMA - dma_close_short = self.df_close[self.COL_MA_S].get_values() - dma_close_long = self.df_close[self.COL_MA_L].get_values() - - - signal = SIGNAL_DEFAULT - - if dma_close_short[-1] > dma_close_short[-2] and dma_close_short[-1] > dma_close_long[-1] \ - and dma_close_short[-2] < dma_close_long[-2]: - signal = SIGNAL_BUY - elif dma_close_long[-1] < dma_close_long[-2] and dma_close_short[-1] < dma_close_long[-1] \ - and dma_close_short[-2] > dma_close_long[-2]: - signal = SIGNAL_SALE - - return signal - - - # MACD指标择时 - def select_Time_MACD(self): - - #EMA - # print self.df_close.tail() - ema_close_short = self.df_close[self.COL_EMA_S].get_values() - ema_close_long = self.df_close[self.COL_EMA_L].get_values() - - - dif_price = ema_close_short - ema_close_long - dea_price = pd.ewma(dif_price, span=self.MA_DEA) - macd_price = 2 * (dif_price - dea_price) - - signal = SIGNAL_DEFAULT - - if dif_price[-1] > dif_price[-2] and dif_price[-1] > dea_price[-2] \ - and dif_price[-2] < dea_price[-2] and dea_price[-1] > 0: - signal = SIGNAL_BUY - elif dif_price[-1] < dif_price[-2] and dif_price[-1] < dea_price[-1] \ - and dif_price[-2] > dea_price[-2] and dif_price[-1] < 0: - signal = SIGNAL_SALE - return signal - - # DMA指标择时 (回测) - def select_Time_DMA(self): - - # DMA - ma_close_short = self.df_close[self.COL_MA_S].get_values() - ma_close_long = self.df_close[self.COL_MA_L].get_values() - - # #MA - # ma_list = [self.AVR_SHORT, self.AVR_LONG] - # ma_dea = 10 - # - # if ma_list[0] == self.AVR_SHORT and ma_list[1] == self.AVR_LONG: - # ma_close_short = self.ma_short - # ma_close_long = self.ma_long - # else: - # ma_close_short = pd.rolling_mean(self.close_price, ma_list[0]) - # ma_close_long = pd.rolling_mean(self.close_price, ma_list[1]) - - dma_price = ma_close_short - ma_close_long - ama_price = pd.rolling_mean(dma_price, self.MA_DEA) - - signal = SIGNAL_DEFAULT - - if dma_price[-1] > dma_price[-2] and dma_price[-1] > ama_price[-1] \ - and dma_price[-2] < ama_price[-2]: - signal = SIGNAL_BUY - elif dma_price[-1] < dma_price[-2] and dma_price[-1] < ama_price[-1] \ - and dma_price[-2] > ama_price[-2]: - signal = SIGNAL_SALE - return signal - - - # TRIX指标择时 (回测) - def select_Time_TRIX(self): - - #EMA - ema_close_short = self.df_close[self.COL_EMA_S].get_values() - ema_ema_close_short = pd.ewma(ema_close_short, span=self.AVR_SHORT) - tr_close = pd.ewma(ema_ema_close_short, span=self.AVR_SHORT) - - # ma_list = [self.AVR_SHORT, self.AVR_SHORT] #N,M - # - # if ma_list[0] == self.AVR_SHORT: - # ema_close = self.ema_short - # else: - # ema_close = pd.ewma(self.close_price, span=ma_list[0]) - # ema_close = pd.ewma(ema_close, span=ma_list[0]) - # tr_close = pd.ewma(ema_close, span=ma_list[0]) - - trixsList = [0] - for i in range(1, len(tr_close)): - #print tr_close[i], tr_close[i-1] - trix = (tr_close[i]-tr_close[i-1])/tr_close[i-1]*100 - trixsList.append(trix) - trixs = np.array(trixsList) - maxtrix = pd.rolling_mean(trixs, self.AVR_LONG) - - signal = SIGNAL_DEFAULT - - if trixs[-1] > trixs[-2] and trixs[-1] > maxtrix[-1] \ - and trixs[-2] < maxtrix[-2]: - signal = SIGNAL_BUY - elif trixs[-1] < trixs[-2] and trixs[-1] < maxtrix[-1] \ - and trixs[-2] > maxtrix[-2]: - signal = SIGNAL_SALE - return signal - - - - - # AMA指标择时 - def select_Time_AMA(self): - - percentage = 0.1 - - close_price = self.df_close['close'].get_values() - - # 指数平滑序列 - containts = [0]*10 - for i in range(10, len(close_price)): - sub_price = close_price[i-10:i] - constaint = self._getConstaint(sub_price) - containts.append(constaint) - - ama_price = [float(close_price[0])] - for i in range(1, len(close_price)): - ama = containts[i-1] * float(close_price[i-1]) + (1-containts[i-1])*ama_price[i-1] - ama_price.append(float(ama)) - - #print np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i]) - threshold = percentage * np.std(np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i])) # 过滤器 - - signal = SIGNAL_DEFAULT - if ama_price[-1] - np.min(ama_price[-6:-1]) > threshold: - signal = SIGNAL_BUY - elif np.max(ama_price[-6:-1]) - ama_price[-1] > threshold: - signal = SIGNAL_SALE - - return signal - - # 获取平方平滑系数 - def _getConstaint(self, prices): - direction = abs(float(prices[-1]) - float(prices[0])) - volatility = sum(abs(float(prices[i+1])-float(prices[i])) for i in range(len(prices)-1)) - if volatility == 0.0: - return 0 - ER = abs(direction/volatility) - fastSC = 2.0/(2.0+1) - slowSC = 2.0/(30.0+1) - sSC = ER * (fastSC-slowSC) + slowSC - constaint = sSC*sSC - return constaint - +#!/usr/local/bin/python +#coding=utf-8 + +#实时均线策略 + +import pandas as pd +import numpy as np +from data_process.data_calcute import calcute_ma +from trade_process import efund_mail2 +from init import * +from util.codeConvert import GetNowDate +from copy import deepcopy + + +class MAStrategy: + + # df: DataFrame + def __init__(self, code, trade, df_close): + """ + :param code: 股票代码 + :param trade: 实时股价, float + :param df_close: 收盘价序列,已排序, columns=['date', 'close'] + """ + + self.AVR_SHORT = AVR_SHORT + self.AVR_LONG = AVR_LONG + self.MA_DEA = 10 + + self.COL_MA_S = 'ma_{}'.format(self.AVR_SHORT) + self.COL_MA_L = 'ma_{}'.format(self.AVR_LONG) + self.COL_EMA_S = 'ema_{}'.format(self.AVR_SHORT) + self.COL_EMA_L = 'ema_{}'.format(self.AVR_LONG) + + + #方式二 + # 将数据按照交易日期从远到近排序 + # df.sort(columns='date', inplace=True) + + df_close = calcute_ma(df_close, AVR_SHORT, AVR_LONG) + + if trade: #有实时股价 + df_now = deepcopy(df_close.tail(1)) + df_now['date'] = GetNowDate() + df_now['close'] = trade + df_close = pd.concat([df_close, df_now], ignore_index=True) + # print df_close.tail() + + #计算当前日期的ma + lastest_ma_short = sum(df_close['close'][-self.AVR_SHORT:])/self.AVR_SHORT + lastest_ma_long = sum(df_close['close'][-self.AVR_LONG:])/self.AVR_LONG + + df_last = df_close[-1:] + df_last[self.COL_MA_S] = lastest_ma_short + df_last[self.COL_MA_L] = lastest_ma_long + + + #计算当前的ema + lastest_ema_short = df_close[self.COL_EMA_S].get_values()[-2] * (self.AVR_SHORT-1)/(self.AVR_SHORT+1) + trade * 2 /(self.AVR_SHORT+1) + lastest_ema_long = df_close[self.COL_EMA_L].get_values()[-2] * (self.AVR_LONG-1)/(self.AVR_LONG+1) + trade * 2 /(self.AVR_LONG+1) + + df_last[self.COL_EMA_S] = lastest_ema_short + df_last[self.COL_EMA_L] = lastest_ema_long + + self.df_close = df_close + + # print self.df_close.head() + # print self.df_close.tail() + + + + # 组合择时指标 (实时) + def select_Time_Mix(self, conditionBuy = 2, conditonSale = 2): + + # 综合策略 + signalMA = self.select_Time_MA() + signalMACD = self.select_Time_MACD() + signalDMA = self.select_Time_DMA() + signalTRIX = self.select_Time_TRIX() + signalAMA = self.select_Time_AMA() + + # 买入信号的总数 + buyTotal = (abs(signalMA)+signalMA)/2 + (abs(signalMACD)+signalMACD)/2 + \ + (abs(signalDMA)+signalDMA)/2 + (abs(signalTRIX)+signalTRIX)/2 + (abs(signalAMA)+signalAMA)/2 + + # 卖出信号的总数 + saleTotal = (-abs(signalMA)+signalMA)/2 + (-abs(signalMACD)+signalMACD)/2 + \ + (-abs(signalDMA)+signalDMA)/2 + (-abs(signalTRIX)+signalTRIX)/2 + (-abs(signalAMA)+signalAMA)/2 + + signal = SIGNAL_DEFAULT + if buyTotal+saleTotal >= conditionBuy: + signal = SIGNAL_BUY + elif buyTotal+saleTotal <= -conditonSale: + signal = SIGNAL_SALE + + return signal + + # MA指标择时 + def select_Time_MA(self): + + #DMA + dma_close_short = self.df_close[self.COL_MA_S].get_values() + dma_close_long = self.df_close[self.COL_MA_L].get_values() + + + signal = SIGNAL_DEFAULT + + if dma_close_short[-1] > dma_close_short[-2] and dma_close_short[-1] > dma_close_long[-1] \ + and dma_close_short[-2] < dma_close_long[-2]: + signal = SIGNAL_BUY + elif dma_close_long[-1] < dma_close_long[-2] and dma_close_short[-1] < dma_close_long[-1] \ + and dma_close_short[-2] > dma_close_long[-2]: + signal = SIGNAL_SALE + + return signal + + + # MACD指标择时 + def select_Time_MACD(self): + + #EMA + # print self.df_close.tail() + ema_close_short = self.df_close[self.COL_EMA_S].get_values() + ema_close_long = self.df_close[self.COL_EMA_L].get_values() + + + dif_price = ema_close_short - ema_close_long + dea_price = pd.ewma(dif_price, span=self.MA_DEA) + macd_price = 2 * (dif_price - dea_price) + + signal = SIGNAL_DEFAULT + + if dif_price[-1] > dif_price[-2] and dif_price[-1] > dea_price[-2] \ + and dif_price[-2] < dea_price[-2] and dea_price[-1] > 0: + signal = SIGNAL_BUY + elif dif_price[-1] < dif_price[-2] and dif_price[-1] < dea_price[-1] \ + and dif_price[-2] > dea_price[-2] and dif_price[-1] < 0: + signal = SIGNAL_SALE + return signal + + # DMA指标择时 (回测) + def select_Time_DMA(self): + + # DMA + ma_close_short = self.df_close[self.COL_MA_S].get_values() + ma_close_long = self.df_close[self.COL_MA_L].get_values() + + # #MA + # ma_list = [self.AVR_SHORT, self.AVR_LONG] + # ma_dea = 10 + # + # if ma_list[0] == self.AVR_SHORT and ma_list[1] == self.AVR_LONG: + # ma_close_short = self.ma_short + # ma_close_long = self.ma_long + # else: + # ma_close_short = pd.rolling_mean(self.close_price, ma_list[0]) + # ma_close_long = pd.rolling_mean(self.close_price, ma_list[1]) + + dma_price = ma_close_short - ma_close_long + ama_price = pd.rolling_mean(dma_price, self.MA_DEA) + + signal = SIGNAL_DEFAULT + + if dma_price[-1] > dma_price[-2] and dma_price[-1] > ama_price[-1] \ + and dma_price[-2] < ama_price[-2]: + signal = SIGNAL_BUY + elif dma_price[-1] < dma_price[-2] and dma_price[-1] < ama_price[-1] \ + and dma_price[-2] > ama_price[-2]: + signal = SIGNAL_SALE + return signal + + # TRIX指标择时 (回测) + def select_Time_TRIX(self): + + #EMA + ema_close_short = self.df_close[self.COL_EMA_S].get_values() + ema_ema_close_short = pd.ewma(ema_close_short, span=self.AVR_SHORT) + tr_close = pd.ewma(ema_ema_close_short, span=self.AVR_SHORT) + + # ma_list = [self.AVR_SHORT, self.AVR_SHORT] #N,M + # + # if ma_list[0] == self.AVR_SHORT: + # ema_close = self.ema_short + # else: + # ema_close = pd.ewma(self.close_price, span=ma_list[0]) + # ema_close = pd.ewma(ema_close, span=ma_list[0]) + # tr_close = pd.ewma(ema_close, span=ma_list[0]) + + trixsList = [0] + for i in range(1, len(tr_close)): + #print tr_close[i], tr_close[i-1] + trix = (tr_close[i]-tr_close[i-1])/tr_close[i-1]*100 + trixsList.append(trix) + trixs = np.array(trixsList) + maxtrix = pd.rolling_mean(trixs, self.AVR_LONG) + + signal = SIGNAL_DEFAULT + + if trixs[-1] > trixs[-2] and trixs[-1] > maxtrix[-1] \ + and trixs[-2] < maxtrix[-2]: + signal = SIGNAL_BUY + elif trixs[-1] < trixs[-2] and trixs[-1] < maxtrix[-1] \ + and trixs[-2] > maxtrix[-2]: + signal = SIGNAL_SALE + return signal + + # AMA指标择时 + def select_Time_AMA(self): + + percentage = 0.1 + + close_price = self.df_close['close'].get_values() + + # 指数平滑序列 + containts = [0]*10 + for i in range(10, len(close_price)): + sub_price = close_price[i-10:i] + constaint = self._getConstaint(sub_price) + containts.append(constaint) + + ama_price = [float(close_price[0])] + for i in range(1, len(close_price)): + ama = containts[i-1] * float(close_price[i-1]) + (1-containts[i-1])*ama_price[i-1] + ama_price.append(float(ama)) + + #print np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i]) + threshold = percentage * np.std(np.array(ama_price[i-19:i+1]) - np.array(ama_price[i-20:i])) # 过滤器 + + signal = SIGNAL_DEFAULT + if ama_price[-1] - np.min(ama_price[-6:-1]) > threshold: + signal = SIGNAL_BUY + elif np.max(ama_price[-6:-1]) - ama_price[-1] > threshold: + signal = SIGNAL_SALE + + return signal + + # 获取平方平滑系数 + def _getConstaint(self, prices): + direction = abs(float(prices[-1]) - float(prices[0])) + volatility = sum(abs(float(prices[i+1])-float(prices[i])) for i in range(len(prices)-1)) + if volatility == 0.0: + return 0 + ER = abs(direction/volatility) + fastSC = 2.0/(2.0+1) + slowSC = 2.0/(30.0+1) + sSC = ER * (fastSC-slowSC) + slowSC + constaint = sSC*sSC + return constaint + +def macd_live(code, df=None): + fundlist = efund_mail2.get_histrydata(code, 365) + df = pd.DataFrame(fundlist[::-1], columns=['date', 'close', 'countclose', 'change']) + url = 'http://fund.eastmoney.com/%s.html' % code[0] + todayvalue = efund_mail2.spider(url) + if (todayvalue != None): + MAStrategyPos = MAStrategy(code[0],todayvalue[0],df) + print str(code) + print u'-- MA 策略 --' + print MAStrategyPos.select_Time_MA() + + print u'-- MACD 策略 --' + print MAStrategyPos.select_Time_MACD() + + print u'-- DMA 策略 --' + print MAStrategyPos.select_Time_DMA() + + print u'-- TRIX 策略 -->' + print MAStrategyPos.select_Time_TRIX() + + print u'-- 组合策略 --' + print MAStrategyPos.select_Time_Mix() + + print u'-- AMA策略 --' + print MAStrategyPos.select_Time_AMA() + + print '\n' + print "main end" + +def macd_live_main(code): + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + buysell = [] + for i in code: + # save(strfundcode=i ,numdays=365*1) + macd_live(i) + +if __name__ == '__main__': + macd_live_main(1) diff --git a/trade_process/strategy/macd_live_test.pyc b/trade_process/strategy/macd_live_test.pyc new file mode 100644 index 0000000..cf011a8 Binary files /dev/null and b/trade_process/strategy/macd_live_test.pyc differ diff --git a/trade_process/strategy/stop_loss.py b/trade_process/strategy/stop_loss.py index 4ec1ce2..af0c886 100644 --- a/trade_process/strategy/stop_loss.py +++ b/trade_process/strategy/stop_loss.py @@ -1,366 +1,366 @@ -#coding: utf-8 - -""" -止盈止损策略 -""" - -import pandas as pd -import copy -from operator import itemgetter - -from init import engine, engine_test -from util.codeConvert import GetNowDate -from data_process.online_data import get_real_price_dataframe - -#限价止损 -def stop_loss_by_price(): - """ - 限价止损 - :return: - """ - #查询持仓股票 - symbolAccount = SymbolAccount() - symbolAccount.init_position_from_db() - - threshold_profit_open = 0.08 #止盈开启阈值 - threshold_profit_pretect = 0.02 #止盈保护阈值 - threshold_loss_pretect = 0.1 #止损保护阈值 - - judgements = [] - - #计算持仓股票的最初价格 - for symbol in symbolAccount.avail_secpos.keys(): - orders = symbolAccount.order_history[symbol] - if len(orders) == 0: - continue - - trade_date_begin = orders[0][0] - - #止盈保护 - close_prices = get_close_prices(symbol, trade_date_begin[:10], GetNowDate()) - if len(close_prices) < 1: - continue - - close_price_begin = close_prices[0] - realtime_price = get_realtime_price(symbol) - if realtime_price == -1: - continue - - if max(close_prices) >= (1 + threshold_profit_open)*close_price_begin: #止盈策略启动 - max_price = max(close_prices) - if realtime_price <= (1 - threshold_profit_pretect) * max_price: - #符合止盈策略,卖出 - reason = '符合止盈策略:相比最高价,下跌了{:.2}%'.format((max_price - realtime_price) / max_price * 100) - symbolAccount.order(symbol, symbolAccount.avail_secpos[symbol], realtime_price, GetNowDate()) - judgements.append((symbol, -1, reason)) - - elif realtime_price <= (1 - threshold_loss_pretect) * close_price_begin: - #符合止损策略,卖出 - down = (close_price_begin-realtime_price)/close_price_begin*100 - reason = '符合止损策略:相比成本价,下跌了{:.2f}%'.format(down) - symbolAccount.order(symbol, symbolAccount.avail_secpos[symbol], realtime_price, GetNowDate()) - judgements.append((symbol, -1, reason)) - - return judgements - - - - - - -class SymbolAccount(): - """ - 股票账户类 - """ - - def __init__(self, account=100000): - self.account = account #初始资金 - self.cash = self.account - self.avail_secpos = {} # 字典,键为证券代码,值为持有的证券数量, {'000001': 100, '600000': 100} - self.order_history = {} #dict, {symbol:000001, [(order_time:2016-07-11, , order_amount:100, order_price)]} , order_amount为正时买入,为负时卖出 - self.position_history = [] # 持仓历史[2016-07-11, cash, {'600000':100, '600031':300}] - - def init_position_from_db(self): - """ - 从数据库初始化持仓情况 - :return: - """ - sql = "SELECT * FROM classifier_db.trade_order order by trade_time asc" - df = pd.read_sql(sql, engine_test) - #剩余现金 - if len(df): - self.cash = df['cash'].get_values()[-1] - - for code in df['code'].drop_duplicates(): - df_code = df[df['code'] == code] - self.avail_secpos[code] = df_code['trade_count'].sum() - - self.order_history.setdefault(code, []) - for _, row in df_code.iterrows(): - self.order_history[code].append([str(row['trade_time']), row['trade_count'], row['trade_price']]) - - - - - - def order(self, smybol, amount, price, trade_date): - """ - - Parameters - ---------- - smybol: 股票代码 - amount: 数量, 正数为买入,负数为卖出 - price: 下单价格 - trade_date: 下单日期 - - Returns: True,成功; False,失败 - ------- - - """ - self.avail_secpos.setdefault(smybol, 0) - self.order_history.setdefault(smybol, []) - - if amount > 0: # 买入 - if amount * price < self.cash: - self.cash -= amount * price - self.avail_secpos[smybol] += amount - self.order_history[smybol].append([str(trade_date)[:10], amount, price]) - else: - return False - - else: #卖出 - if abs(amount) <= self.avail_secpos[smybol]: - self.cash += abs(amount) * price - self.avail_secpos[smybol] += amount - self.order_history[smybol].append([str(trade_date)[:10],amount, price]) - - for smybol in self.avail_secpos.keys(): - if self.avail_secpos[smybol] == 0: #删除持仓为0的股票 - del self.avail_secpos[smybol] - - self.position_history.append([trade_date, self.cash, copy.deepcopy(self.avail_secpos)]) - - - # def order_pct(self, smybol, pct, price): - # """ - # - # Parameters - # ---------- - # smybol: 股票代码 - # pct: 买入比例 - # price: 买入价格 - # - # Returns - # ------- - # - # """ - # pass - - - def get_current_account(self, current_date): - """ - 获取当前时间的持仓市值 - Parameters - ---------- - current_date: 当前日期 - - Returns - ------- - - """ - - smybol_market_values = 0 - for symbol in self.avail_secpos.keys(): - - # 获取股票价格 - close_hfq = get_close_price(symbol, current_date) - if close_hfq == -1: - msg = "{},{},get code close_price error!".format(symbol, current_date) - # raise Exception(msg) - print msg - return 0 - - smybol_market_values += close_hfq * self.avail_secpos[symbol] - - return smybol_market_values + self.cash - - def get_sorted_symbols_by_return_rate(self, trade_date): - """ - 持仓股票按收益率排序 - Returns - ------- - - """ - smybol_rate_list = [] - for smybol in self.order_history.keys(): - #单只股票持仓成本 - total_count = 0 - total_cost = 0.0 - for one_order in self.order_history[smybol]: - total_count += one_order[1] - total_cost += one_order[1] * one_order[2] - if total_count == 0: - continue - - aver_price = total_cost/total_count #平均持仓成本 - now_price = get_close_price(smybol, trade_date) - smybol_rate_list.append((smybol, (now_price-aver_price)/aver_price)) - - smybol_rate_list = sorted(smybol_rate_list, key=itemgetter(1), reverse=True) - return smybol_rate_list - - def get_all_order_history_by_date(self): - orders = [] - for smybol in self.order_history.keys(): - smybol_orders = self.order_history[smybol] - smybol_orders = [[smybol] +one for one in smybol_orders] - orders.extend(smybol_orders) - orders = sorted(orders, key =lambda x : x[1]) - print orders[:3] - print orders[-3:] - return orders - - def calcute_maximun_drawdown(self): - """ - 计算最大回撤 - Returns - ------- - """ - - jingzhi_list = self.get_jingzhi_daliy() - - if len(jingzhi_list) >= 2: - jingzhi_list_sorted = sorted(jingzhi_list, key=lambda x : x[1], reverse=True) - max_vale = jingzhi_list_sorted[0][1] - max_value_date = jingzhi_list_sorted[0][0] - jingzhi_list_after = [jingzhi for jingzhi in jingzhi_list if jingzhi[0] > max_value_date] - jingzhi_list_sorted = sorted(jingzhi_list, key=lambda x : x[1]) - min_value = jingzhi_list_sorted[0][1] - - max_drawdown = (max_vale-min_value)/max_vale * 100.0 - return max_drawdown - - return 0 - - def get_jingzhi_daliy(self): - """ - 获取每日净值 - Returns - ------- - """ - if len(self.position_history) < 2: - return [] - - # 持仓起止日期范围 - rng = pd.date_range(self.position_history[0][0], self.position_history[-1][0], freq='D') - jingzhi_list = [] - - for trade_date in rng: - # 获取现金,持仓股票及数量 - position = self.get_position_by_trade_date(trade_date) - if not position: - continue - - # 此刻的持仓成本 - cash = position[1] # cash - avail_secpos = position[2] - is_trade_date = True - - for smybol in avail_secpos.keys(): - close_price = get_close_price(smybol, trade_date) - if close_price == -1: - is_trade_date = False - break - cash += avail_secpos[smybol] * close_price - - if not is_trade_date: - continue - - jingzhi_list.append([trade_date, cash * 1.0 / self.account]) - - return jingzhi_list - - def get_position_by_trade_date(self, trade_date): - """ - 获取持仓股票及数量 - Parameters - ---------- - trade_date - - Returns - ------- - """ - for i in range(1,len(self.position_history)): - # print type(trade_date.to_datetime()), str(position[0]) - if str(trade_date.to_datetime()) >= str(self.position_history[i-1][0]) and str(trade_date.to_datetime()) < str(self.position_history[i][0]): - return self.position_history[i-1] - - # if len(self.position_history): - # return self.position_history[-1] - return None - -def get_close_price(symbol, trade_date): - """ - 获取后复权价格 - Parameters - ---------- - symbol - trade_date - - Returns - ------- - - """ - if len(symbol) == 6: - sql = "SELECT close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' order by date asc".format(symbol, trade_date) - else: - sql = "SELECT close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' order by date asc".format( - symbol, trade_date) - df = pd.read_sql(sql, engine) - closes = df['close'].get_values() - if len(closes) == 0: - # raise Exception("get code close_price error!") - return -1 - - return closes[0] - - -def get_close_prices(symbol, trade_date_begin, trade_date_end): - - """ - 获取前复权价格序列 - :param symbol: - :param trade_date_begin: - :param trade_date_end: - :return: - """ - - if len(symbol) == 6: - sql = "SELECT date, close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' and date <='{}' order by date asc".format( - symbol, trade_date_begin, trade_date_end) - else: - sql = "SELECT date, close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' and date <='{}' order by date asc".format( - symbol, trade_date_begin, trade_date_end) - df = pd.read_sql(sql, engine) - closes = df['close'].get_values() - - return closes - -def get_realtime_price(symbol): - """ - 获取实时股价 - :param symbol: - :return: - """ - try: - df = get_real_price_dataframe() - df_s = df[df['code'] == symbol] - if len(df_s['trade'].get_values()): - return df_s['trade'].get_values()[0] - else: - return -1 - except: - return -1 - -if __name__ == "__main__": +#coding: utf-8 + +""" +止盈止损策略 +""" + +import pandas as pd +import copy +from operator import itemgetter + +# from init import engine, engine_test +from util.codeConvert import GetNowDate +from data_process.online_data import get_real_price_dataframe + +#限价止损 +def stop_loss_by_price(): + """ + 限价止损 + :return: + """ + #查询持仓股票 + symbolAccount = SymbolAccount() + symbolAccount.init_position_from_db() + + threshold_profit_open = 0.08 #止盈开启阈值 + threshold_profit_pretect = 0.02 #止盈保护阈值 + threshold_loss_pretect = 0.1 #止损保护阈值 + + judgements = [] + + #计算持仓股票的最初价格 + for symbol in symbolAccount.avail_secpos.keys(): + orders = symbolAccount.order_history[symbol] + if len(orders) == 0: + continue + + trade_date_begin = orders[0][0] + + #止盈保护 + close_prices = get_close_prices(symbol, trade_date_begin[:10], GetNowDate()) + if len(close_prices) < 1: + continue + + close_price_begin = close_prices[0] + realtime_price = get_realtime_price(symbol) + if realtime_price == -1: + continue + + if max(close_prices) >= (1 + threshold_profit_open)*close_price_begin: #止盈策略启动 + max_price = max(close_prices) + if realtime_price <= (1 - threshold_profit_pretect) * max_price: + #符合止盈策略,卖出 + reason = '符合止盈策略:相比最高价,下跌了{:.2}%'.format((max_price - realtime_price) / max_price * 100) + symbolAccount.order(symbol, symbolAccount.avail_secpos[symbol], realtime_price, GetNowDate()) + judgements.append((symbol, -1, reason)) + + elif realtime_price <= (1 - threshold_loss_pretect) * close_price_begin: + #符合止损策略,卖出 + down = (close_price_begin-realtime_price)/close_price_begin*100 + reason = '符合止损策略:相比成本价,下跌了{:.2f}%'.format(down) + symbolAccount.order(symbol, symbolAccount.avail_secpos[symbol], realtime_price, GetNowDate()) + judgements.append((symbol, -1, reason)) + + return judgements + + + + + + +class SymbolAccount(): + """ + 股票账户类 + """ + + def __init__(self, account=100000): + self.account = account #初始资金 + self.cash = self.account + self.avail_secpos = {} # 字典,键为证券代码,值为持有的证券数量, {'000001': 100, '600000': 100} + self.order_history = {} #dict, {symbol:000001, [(order_time:2016-07-11, , order_amount:100, order_price)]} , order_amount为正时买入,为负时卖出 + self.position_history = [] # 持仓历史[2016-07-11, cash, {'600000':100, '600031':300}] + + def init_position_from_db(self): + """ + 从数据库初始化持仓情况 + :return: + """ + sql = "SELECT * FROM classifier_db.trade_order order by trade_time asc" + df = pd.read_sql(sql, engine_test) + #剩余现金 + if len(df): + self.cash = df['cash'].get_values()[-1] + + for code in df['code'].drop_duplicates(): + df_code = df[df['code'] == code] + self.avail_secpos[code] = df_code['trade_count'].sum() + + self.order_history.setdefault(code, []) + for _, row in df_code.iterrows(): + self.order_history[code].append([str(row['trade_time']), row['trade_count'], row['trade_price']]) + + + + + + def order(self, smybol, amount, price, trade_date): + """ + + Parameters + ---------- + smybol: 股票代码 + amount: 数量, 正数为买入,负数为卖出 + price: 下单价格 + trade_date: 下单日期 + + Returns: True,成功; False,失败 + ------- + + """ + self.avail_secpos.setdefault(smybol, 0) + self.order_history.setdefault(smybol, []) + + if amount > 0: # 买入 + if amount * price < self.cash: + self.cash -= amount * price + self.avail_secpos[smybol] += amount + self.order_history[smybol].append([str(trade_date)[:10], amount, price]) + else: + return False + + else: #卖出 + if abs(amount) <= self.avail_secpos[smybol]: + self.cash += abs(amount) * price + self.avail_secpos[smybol] += amount + self.order_history[smybol].append([str(trade_date)[:10],amount, price]) + + for smybol in self.avail_secpos.keys(): + if self.avail_secpos[smybol] == 0: #删除持仓为0的股票 + del self.avail_secpos[smybol] + + self.position_history.append([trade_date, self.cash, copy.deepcopy(self.avail_secpos)]) + + + # def order_pct(self, smybol, pct, price): + # """ + # + # Parameters + # ---------- + # smybol: 股票代码 + # pct: 买入比例 + # price: 买入价格 + # + # Returns + # ------- + # + # """ + # pass + + + def get_current_account(self, current_date): + """ + 获取当前时间的持仓市值 + Parameters + ---------- + current_date: 当前日期 + + Returns + ------- + + """ + + smybol_market_values = 0 + for symbol in self.avail_secpos.keys(): + + # 获取股票价格 + close_hfq = get_close_price(symbol, current_date) + if close_hfq == -1: + msg = "{},{},get code close_price error!".format(symbol, current_date) + # raise Exception(msg) + print msg + return 0 + + smybol_market_values += close_hfq * self.avail_secpos[symbol] + + return smybol_market_values + self.cash + + def get_sorted_symbols_by_return_rate(self, trade_date): + """ + 持仓股票按收益率排序 + Returns + ------- + + """ + smybol_rate_list = [] + for smybol in self.order_history.keys(): + #单只股票持仓成本 + total_count = 0 + total_cost = 0.0 + for one_order in self.order_history[smybol]: + total_count += one_order[1] + total_cost += one_order[1] * one_order[2] + if total_count == 0: + continue + + aver_price = total_cost/total_count #平均持仓成本 + now_price = get_close_price(smybol, trade_date) + smybol_rate_list.append((smybol, (now_price-aver_price)/aver_price)) + + smybol_rate_list = sorted(smybol_rate_list, key=itemgetter(1), reverse=True) + return smybol_rate_list + + def get_all_order_history_by_date(self): + orders = [] + for smybol in self.order_history.keys(): + smybol_orders = self.order_history[smybol] + smybol_orders = [[smybol] +one for one in smybol_orders] + orders.extend(smybol_orders) + orders = sorted(orders, key =lambda x : x[1]) + print orders[:3] + print orders[-3:] + return orders + + def calcute_maximun_drawdown(self): + """ + 计算最大回撤 + Returns + ------- + """ + + jingzhi_list = self.get_jingzhi_daliy() + + if len(jingzhi_list) >= 2: + jingzhi_list_sorted = sorted(jingzhi_list, key=lambda x : x[1], reverse=True) + max_vale = jingzhi_list_sorted[0][1] + max_value_date = jingzhi_list_sorted[0][0] + jingzhi_list_after = [jingzhi for jingzhi in jingzhi_list if jingzhi[0] > max_value_date] + jingzhi_list_sorted = sorted(jingzhi_list, key=lambda x : x[1]) + min_value = jingzhi_list_sorted[0][1] + + max_drawdown = (max_vale-min_value)/max_vale * 100.0 + return max_drawdown + + return 0 + + def get_jingzhi_daliy(self): + """ + 获取每日净值 + Returns + ------- + """ + if len(self.position_history) < 2: + return [] + + # 持仓起止日期范围 + rng = pd.date_range(self.position_history[0][0], self.position_history[-1][0], freq='D') + jingzhi_list = [] + + for trade_date in rng: + # 获取现金,持仓股票及数量 + position = self.get_position_by_trade_date(trade_date) + if not position: + continue + + # 此刻的持仓成本 + cash = position[1] # cash + avail_secpos = position[2] + is_trade_date = True + + for smybol in avail_secpos.keys(): + close_price = get_close_price(smybol, trade_date) + if close_price == -1: + is_trade_date = False + break + cash += avail_secpos[smybol] * close_price + + if not is_trade_date: + continue + + jingzhi_list.append([trade_date, cash * 1.0 / self.account]) + + return jingzhi_list + + def get_position_by_trade_date(self, trade_date): + """ + 获取持仓股票及数量 + Parameters + ---------- + trade_date + + Returns + ------- + """ + for i in range(1,len(self.position_history)): + # print type(trade_date.to_datetime()), str(position[0]) + if str(trade_date.to_datetime()) >= str(self.position_history[i-1][0]) and str(trade_date.to_datetime()) < str(self.position_history[i][0]): + return self.position_history[i-1] + + # if len(self.position_history): + # return self.position_history[-1] + return None + +def get_close_price(symbol, trade_date): + """ + 获取后复权价格 + Parameters + ---------- + symbol + trade_date + + Returns + ------- + + """ + if len(symbol) == 6: + sql = "SELECT close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' order by date asc".format(symbol, trade_date) + else: + sql = "SELECT close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' order by date asc".format( + symbol, trade_date) + df = pd.read_sql(sql, engine) + closes = df['close'].get_values() + if len(closes) == 0: + # raise Exception("get code close_price error!") + return -1 + + return closes[0] + + +def get_close_prices(symbol, trade_date_begin, trade_date_end): + + """ + 获取前复权价格序列 + :param symbol: + :param trade_date_begin: + :param trade_date_end: + :return: + """ + + if len(symbol) == 6: + sql = "SELECT date, close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' and date <='{}' order by date asc".format( + symbol, trade_date_begin, trade_date_end) + else: + sql = "SELECT date, close FROM hq_db.stock_kline_fq where code='{}' and date>='{}' and date <='{}' order by date asc".format( + symbol, trade_date_begin, trade_date_end) + df = pd.read_sql(sql, engine) + closes = df['close'].get_values() + + return closes + +def get_realtime_price(symbol): + """ + 获取实时股价 + :param symbol: + :return: + """ + try: + df = get_real_price_dataframe() + df_s = df[df['code'] == symbol] + if len(df_s['trade'].get_values()): + return df_s['trade'].get_values()[0] + else: + return -1 + except: + return -1 + +if __name__ == "__main__": stop_loss_by_price() \ No newline at end of file diff --git a/trade_process/strategy/stop_loss.pyc b/trade_process/strategy/stop_loss.pyc new file mode 100644 index 0000000..094657f Binary files /dev/null and b/trade_process/strategy/stop_loss.pyc differ diff --git a/trade_process/strategy/strategy_macd.py b/trade_process/strategy/strategy_macd.py index 56deb28..c4d43b5 100644 --- a/trade_process/strategy/strategy_macd.py +++ b/trade_process/strategy/strategy_macd.py @@ -1,66 +1,66 @@ -#!/usr/local/bin/python -#coding=utf-8 - -import os - -import matplotlib.pyplot as plt - -from trade_process.strategy import macd_back_test -import data_process.native_data as native_data - - -def strategy_macd(): - #读取历史数据 - - # 计算EMA(12日,26日), DIF, DEA, MACD - downloadDir = os.path.pardir + '\\stockdata' - downloadDirNew = os.getcwd() + '\\stockdata_macd' - if os.path.exists(downloadDir) == False: - os.makedirs(downloadDir) - if os.path.exists(downloadDirNew) == False: - os.makedirs(downloadDirNew) - - #遍历文件夹下的所有csv数据 - for root, dirs, files in os.walk(downloadDir): - for name in files: - stockCsvPath = root + '\\' + name - if ".csv" in stockCsvPath: - basename = os.path.basename(stockCsvPath) - stock_code, exp = os.path.splitext(basename) - #macd_back_test.run(stockCsvPath, stock_code) - - each_stock_strategy(stockCsvPath, stock_code) - #break - -def each_stock_strategy(stockCsvPath, stock_code): - plt.figure() - - r = native_data.getCsvDataByFullPath(stockCsvPath) - dif_price, dea_price, macd_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') - ama_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'AMA') - macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MA') - macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'DMA') - macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') - macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'TRIX') - - #plot.plotClosePrice(plt, str(stock_code), stock_code, root) - #plot.plotData(stockCsvPath + '\\' +name, name) -# plt.plot(range(len(r.adj_close)), r.adj_close, 'black', label="Close") -# plt.plot(range(len(dif_price)), dif_price, 'red', label='DIF') -# plt.plot(range(len(dea_price)), dea_price, 'blue', label='DEA') -# plt.plot(range(len(macd_price)), macd_price, 'cyan', label='MACD') -# plt.plot(range(len(ama_price)), ama_price, 'green', label='AMA') -# plt.title(stock_code) -# plt.legend() -# plt.grid() -# plt.show() - -# 实时策略 -def live_stock_strategy(stockCsvPath, stock_code): - r = native_data.getCsvDataByFullPath(stockCsvPath) - dif_price, dea_price, macd_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') - ama_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'AMA') - -if __name__ == "__main__": - strategy_macd() +#!/usr/local/bin/python +#coding=utf-8 + +import os + +import matplotlib.pyplot as plt + +from trade_process.strategy import macd_back_test +import data_process.native_data as native_data + + +def strategy_macd(): + #读取历史数据 + + # 计算EMA(12日,26日), DIF, DEA, MACD + downloadDir = os.path.pardir + '\\stockdata' + downloadDirNew = os.getcwd() + '\\stockdata_macd' + if os.path.exists(downloadDir) == False: + os.makedirs(downloadDir) + if os.path.exists(downloadDirNew) == False: + os.makedirs(downloadDirNew) + + #遍历文件夹下的所有csv数据 + for root, dirs, files in os.walk(downloadDir): + for name in files: + stockCsvPath = root + '\\' + name + if ".csv" in stockCsvPath: + basename = os.path.basename(stockCsvPath) + stock_code, exp = os.path.splitext(basename) + #macd_back_test.run(stockCsvPath, stock_code) + + each_stock_strategy(stockCsvPath, stock_code) + #break + +def each_stock_strategy(stockCsvPath, stock_code): + plt.figure() + + r = native_data.getCsvDataByFullPath(stockCsvPath) + dif_price, dea_price, macd_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') + ama_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'AMA') + macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MA') + macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'DMA') + macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') + macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'TRIX') + + #plot.plotClosePrice(plt, str(stock_code), stock_code, root) + #plot.plotData(stockCsvPath + '\\' +name, name) +# plt.plot(range(len(r.adj_close)), r.adj_close, 'black', label="Close") +# plt.plot(range(len(dif_price)), dif_price, 'red', label='DIF') +# plt.plot(range(len(dea_price)), dea_price, 'blue', label='DEA') +# plt.plot(range(len(macd_price)), macd_price, 'cyan', label='MACD') +# plt.plot(range(len(ama_price)), ama_price, 'green', label='AMA') +# plt.title(stock_code) +# plt.legend() +# plt.grid() +# plt.show() + +# 实时策略 +def live_stock_strategy(stockCsvPath, stock_code): + r = native_data.getCsvDataByFullPath(stockCsvPath) + dif_price, dea_price, macd_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'MACD') + ama_price = macd_back_test.getMAStrategy(stockCsvPath, stock_code, 'AMA') + +if __name__ == "__main__": + strategy_macd() #each_stock_strategy("..\\stockdata\\600000.csv", '399001') \ No newline at end of file diff --git a/trade_process/strategy/strategy_macd.pyc b/trade_process/strategy/strategy_macd.pyc new file mode 100644 index 0000000..25a9fb1 Binary files /dev/null and b/trade_process/strategy/strategy_macd.pyc differ diff --git a/trade_process/strategy/test.py b/trade_process/strategy/test.py index 3c55bf3..144c921 100644 --- a/trade_process/strategy/test.py +++ b/trade_process/strategy/test.py @@ -1,108 +1,108 @@ -#!/usr/local/bin/python -#coding=utf-8 - -from data_process.data_get import * -import pandas.io.data as web -import re, urllib, urllib2, cookielib - -def find_stock_by(code): - #print 'find begin' - code = getSixDigitalStockCode(code) - # 取六月以来的股价 - df = get_stock_k_line(code, date_start='2015-06-01') - close_prices = df[cm.KEY_CLOSE].get_values() - dates = df[cm.KEY_DATE].get_values() - if len(dates) == 0: - return - now_date = dates[-1][:10] - if now_date != '2015-07-10': - return - - max_price = close_prices.max() - now_price = close_prices[-1] - ratio = (max_price - now_price) / max_price - if ratio >= 0.6 and ratio < 0.: - print code, '相比六月以来最大值降幅 :%f' % (ratio * 100 ),'%' - -def getHtml(url): - page = urllib.urlopen(url) - html = page.read() - html = html.decode('GBK') - return html - -def getImg(html): - reg = r'"(http://quote.eastmoney.com/(sh|sz)[360].+html)">(.+)\(([0-9]{6})\)
  • ' - imgre = re.compile(reg) - imgList = re.findall(imgre, html) - - x = 0 - for imgurl in imgList: - print imgurl - #urllib.urlretrieve(imgurl, '%s.jpg' % x) - x = x + 1 - return len(imgList) - -if __name__ == "__main__": - -# codes = get_stock_codes() -# for code in codes: -# find_stock_by(code) -# some_text = 'alpha , beta ,,,gamma delta ' -# print re.split('[,]', some_text) -# -# pat = '[a-zA-Z]+' -# text = '"Hm...err -- are you sure?" he said, sounding insecure.' -# print re.findall(pat, text) -# -# pat = '{name}' -# text = 'Dear {name}...' -# print re.sub(pat, 'Mr. Gumby', text) -# -# print re.escape('www.python.org') -# print re.escape('but where is the ambiguity?') -# -# m = re.match(r'www\.(.*)\..{3}', 'www.python.org') -# print m.group(1) -# print m.start(1), m.end(1), m.span(1) - - #print getImg(getHtml('http://quote.eastmoney.com/stocklist.html')) - values = {"username":"cbbing", "password":"xx"} - data = urllib.urlencode(values) - url = "https://passport.csdn.net/account/login?from=http://my.csdn.net/my/mycsdn" - user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36' - headers = {'User-Agent':user_agent} - - geturl = url+"?"+data - print geturl - - request = urllib2.Request(url, data, headers) - response = urllib2.urlopen(request) - #print response.read() - - cookie = cookielib.CookieJar() - handler = urllib2.HTTPCookieProcessor(cookie) - opener = urllib2.build_opener(handler) - response = opener.open("http://www.baidu.com") - for item in cookie: - print 'Name= ' + item.name - print 'Value= ' + item.value - -# filename='cookie.txt' -# cookie = cookielib.MozillaCookieJar(filename) -# handler = urllib2.HTTPCookieProcessor(cookie) -# opener = urllib2.build_opener(handler) -# response = opener.open("http://www.baidu.com") -# cookie.save(ignore_discard=True, ignore_expires=True) - - cookie = cookielib.MozillaCookieJar() - cookie.load('cookie.txt', ignore_discard=True, ignore_expires=True) - req = urllib2.Request("http://www.baidu.com") - opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie)) - response = opener.open(req) - print response.read() - - - - - +#!/usr/local/bin/python +#coding=utf-8 + +from data_process.data_get import * +import pandas.io.data as web +import re, urllib, urllib2, cookielib + +def find_stock_by(code): + #print 'find begin' + code = getSixDigitalStockCode(code) + # 取六月以来的股价 + df = get_stock_k_line(code, date_start='2015-06-01') + close_prices = df[cm.KEY_CLOSE].get_values() + dates = df[cm.KEY_DATE].get_values() + if len(dates) == 0: + return + now_date = dates[-1][:10] + if now_date != '2015-07-10': + return + + max_price = close_prices.max() + now_price = close_prices[-1] + ratio = (max_price - now_price) / max_price + if ratio >= 0.6 and ratio < 0.: + print code, '相比六月以来最大值降幅 :%f' % (ratio * 100 ),'%' + +def getHtml(url): + page = urllib.urlopen(url) + html = page.read() + html = html.decode('GBK') + return html + +def getImg(html): + reg = r'"(http://quote.eastmoney.com/(sh|sz)[360].+html)">(.+)\(([0-9]{6})\)' + imgre = re.compile(reg) + imgList = re.findall(imgre, html) + + x = 0 + for imgurl in imgList: + print imgurl + #urllib.urlretrieve(imgurl, '%s.jpg' % x) + x = x + 1 + return len(imgList) + +if __name__ == "__main__": + +# codes = get_stock_codes() +# for code in codes: +# find_stock_by(code) +# some_text = 'alpha , beta ,,,gamma delta ' +# print re.split('[,]', some_text) +# +# pat = '[a-zA-Z]+' +# text = '"Hm...err -- are you sure?" he said, sounding insecure.' +# print re.findall(pat, text) +# +# pat = '{name}' +# text = 'Dear {name}...' +# print re.sub(pat, 'Mr. Gumby', text) +# +# print re.escape('www.python.org') +# print re.escape('but where is the ambiguity?') +# +# m = re.match(r'www\.(.*)\..{3}', 'www.python.org') +# print m.group(1) +# print m.start(1), m.end(1), m.span(1) + + #print getImg(getHtml('http://quote.eastmoney.com/stocklist.html')) + values = {"username":"cbbing", "password":"xx"} + data = urllib.urlencode(values) + url = "https://passport.csdn.net/account/login?from=http://my.csdn.net/my/mycsdn" + user_agent = 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.132 Safari/537.36' + headers = {'User-Agent':user_agent} + + geturl = url+"?"+data + print geturl + + request = urllib2.Request(url, data, headers) + response = urllib2.urlopen(request) + #print response.read() + + cookie = cookielib.CookieJar() + handler = urllib2.HTTPCookieProcessor(cookie) + opener = urllib2.build_opener(handler) + response = opener.open("http://www.baidu.com") + for item in cookie: + print 'Name= ' + item.name + print 'Value= ' + item.value + +# filename='cookie.txt' +# cookie = cookielib.MozillaCookieJar(filename) +# handler = urllib2.HTTPCookieProcessor(cookie) +# opener = urllib2.build_opener(handler) +# response = opener.open("http://www.baidu.com") +# cookie.save(ignore_discard=True, ignore_expires=True) + + cookie = cookielib.MozillaCookieJar() + cookie.load('cookie.txt', ignore_discard=True, ignore_expires=True) + req = urllib2.Request("http://www.baidu.com") + opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(cookie)) + response = opener.open(req) + print response.read() + + + + + \ No newline at end of file diff --git a/trade_process/strategy/tread_tracking.py b/trade_process/strategy/tread_tracking.py index e42c720..735fbe2 100644 --- a/trade_process/strategy/tread_tracking.py +++ b/trade_process/strategy/tread_tracking.py @@ -1,542 +1,586 @@ -#!/usr/local/bin/python -#coding=utf-8 -# 趋势追踪策略 -""" -http://t.cn/RqQv0JW -""" - -import pandas as pd -import matplotlib.pyplot as plt -import numpy as np -from data_process.data_get import get_stock_k_line -from tushare.util import dateu as du -import datetime -import tushare as ts -import cwavelet - -#参数 -prama_ma_short = 12 # 短均线 -prama_ma_long = 40 # 长均线 -filter_range = 0.004 # 滤波区间 -drift = 0.0015 #漂移项 -param_big_band = 0.02 #大波段判断条件 -protect_big_band = 0.002 # 大波段保护止赢点 - -SIGNAL_BUY = 1 #买 -SIGNAL_SALE = -1 #卖 -SIGNAL_DEFAULT = 0 - -# 趋势追踪实时交易 -# 参数 -# code:股票代码 -# df: 个股的K线数据 -# price_now:实时股价 -def tread_track_live_trading(code, price_now, df=None): - - # 分析某个时间段的股票 - #dateS = datetime.datetime.today().date() + datetime.timedelta(-100) - #date_start = dateS.strftime("%Y-%m-%d") - #df = df[df.index > date_start] - - try: - df = get_stock_k_line(code) - #df = df.reindex(df.index[::-1]) - except Exception as e: - print str(e) - return - #print df - - close_price = df['close'].get_values() - close_price = np.append(close_price, float(price_now)) - ma_short = pd.rolling_mean(close_price, prama_ma_short) - ma_long = pd.rolling_mean(close_price, prama_ma_long) - #print ma_short - - - signal = SIGNAL_SALE - - print '交易开始' - - plt.figure(figsize=(16,8)) - #plt.plot(range(len(ma_short)), ma_short.get_values(), label=code, color="b", linewidth=1) - - plt.xlabel("Time") - plt.ylabel("Price") - - # 过滤微小波动 - extreIndex = -1 #极值点的索引 - for i in range(prama_ma_short+1, len(ma_short)-1): - bMax = ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1] # 极大值的条件 - bMin = ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1] # 极小值的条件 - if bMax or bMin: - extreIndex = i - elif extreIndex > 0: - if ma_short[i] > ma_short[extreIndex]*(1-filter_range) and \ - ma_short[i] < ma_short[extreIndex]*(1+filter_range): - ma_short[i] = ma_short[extreIndex] - #print i,ma_short[i] - - #plt.plot(range(len(ma_short.get_values())), ma_short.get_values(), label=code, color="r", linewidth=1) - - # 交易次数 - count_sale = 0 - count_buy = 0 - - min_index_pre = 0 #前一个极小值 - max_index_pre = 0 #前一个极大值 - - # 止损位 - keep_stop_price = 0 - keep_stop_index = 0 - - # 止赢位 - keep_win_price = 0 - keep_win_index = 0 - - total = 0 - price_buy = 0 - price_init = 0 - money_init = 50000 - stock_money = money_init - stock_count = 0 - - - #for i in range(prama_ma_short+1, len(ma_short)-1): - for i in range(len(ma_short)-30, len(ma_short)-1): - - #滤波后的均线走平时(即处于滤波区间内),将其识别为一个点 - index_post = i+1 - - try: - while(ma_short[index_post] == ma_short[i] and index_post < len(ma_short)-1): - index_post += 1 - except Exception as e: - print str(e) - - # 长均线保护策略 - bLongMA_protect_close = True - try: - bLongMA_protect_close = ma_short[i] > ma_long[i] # 长均线保护是否关闭 - except Exception as e: - print str(e) - #if bLongMA_protect_close == False: - #print "长均线保护打开", i - - # 高低点比较策略 - if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[index_post]: - #print '极大值:', ma_short[i], 'pos:', i - if bLongMA_protect_close and max_index_pre > 0 and ma_short[i] < ma_short[max_index_pre] + drift*(i-max_index_pre) and signal == SIGNAL_BUY: - signal = SIGNAL_SALE - print '卖出:', close_price[i], 'pos:', i - count_sale += 1 - total += close_price[i] - price_buy - - stock_money += stock_count * close_price[i] - stock_count = 0 - - max_index_pre = i - elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[index_post]: - #print '极小值:', ma_short[i], 'pos:', i - if bLongMA_protect_close and min_index_pre > 0 and ma_short[i] > ma_short[min_index_pre] + drift*(i-min_index_pre) and signal == SIGNAL_SALE: - signal = SIGNAL_BUY - print '买入:', close_price[i], 'pos:', i - count_buy += 1 - price_buy = close_price[i] - if price_init == 0: - price_init = price_buy - - stock_count = (stock_money/100)/close_price[i]*100 - stock_money = stock_money - stock_count*close_price[i] - min_index_pre = i - - # 高低点突破策略 - # 股价突破前一个低点加漂移项,则卖出 - elif bLongMA_protect_close and signal == SIGNAL_BUY and min_index_pre > 0 and \ - ma_short[i] < ma_short[min_index_pre] + drift*(i-min_index_pre): - signal = SIGNAL_SALE - print '卖出:', close_price[i], 'pos:', i - count_sale += 1 - total += close_price[i] - price_buy - - stock_money += stock_count * close_price[i] - stock_count = 0 - - # 股价突破前一个高点加漂移项,则买入 - elif bLongMA_protect_close and signal == SIGNAL_SALE and max_index_pre > 0 and \ - ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): - signal = SIGNAL_BUY - print '买入:', close_price[i], 'pos:', i - count_buy += 1 - price_buy = close_price[i] - - stock_count = (stock_money/100)/close_price[i]*100 - stock_money = stock_money - stock_count*close_price[i] - - # 大波段保护策略 - elif min_index_pre > 0 and ma_short[i] >= ma_short[min_index_pre]*(1+param_big_band): - keep_stop_price = ma_short[i] * (1-protect_big_band) #止损位 - keep_stop_index = i - elif bLongMA_protect_close and signal == SIGNAL_BUY and keep_stop_price > 0 and \ - ma_short[i] < keep_stop_price + drift*(i-keep_stop_index): - signal = SIGNAL_SALE - print '卖出:', close_price[i], 'pos:', i - count_sale += 1 - total += close_price[i] - price_buy - - stock_money += stock_count * close_price[i] - stock_count = 0 - - - - - print "buy count:", count_buy - print "sale count:", count_sale - - if stock_count > 0: - stock_money += stock_count * close_price[-1] - total += close_price[-1] - price_buy - - print "每股盈利:", total, "收益率:", (stock_money-money_init)/money_init*100,"%\n" - - print '交易结束' - - plt.grid() - #plt.legend() - #plt.show() - return (stock_money-money_init)/money_init*100 - - -# 趋势追踪回测 -# 参数 -# code:股票代码 -# df: 个股的K线数据 -def tread_track_backtest(code, df=None): - - df = get_stock_k_line(code, date_start='2015-12-30', date_end='2016-05-05') - if len(df) == 0: - return None - - print df.head(2) - # 分析某个时间段的股票 - #dateS = datetime.datetime.today().date() + datetime.timedelta(-100) - #date_start = dateS.strftime("%Y-%m-%d") - #df = df[df.index > date_start] - #print df - - # try: - # df = df.reindex(df.index[::-1]) - # except Exception as e: - # print str(e) - # return - #print df - - close_price = df['close'].get_values() - ma_short = pd.rolling_mean(df['close'], prama_ma_short) - ma_long = pd.rolling_mean(df['close'], prama_ma_long) - #print ma_short - - signal = SIGNAL_SALE - - print '交易开始' - - #plt.figure(figsize=(16,8)) - #plt.plot(range(len(ma_short)), ma_short.get_values(), label=code, color="b", linewidth=1) - - # plt.xlabel("Time") - # plt.ylabel("Price") - - - - # 判断极点 -# for i in range(prama_ma_short+1, len(ma_short)-1): -# if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1]: -# print '极大值:', ma_short[i], 'pos:', i -# -# elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1]: -# print '极小值:', ma_short[i], 'pos:', i - - # 过滤微小波动 - extreIndex = -1 #极值点的索引 - for i in range(prama_ma_short+1, len(ma_short)-1): - bMax = ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1] # 极大值的条件 - bMin = ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1] # 极小值的条件 - if bMax or bMin: - extreIndex = i - elif extreIndex > 0: - if ma_short[i] > ma_short[extreIndex]*(1-filter_range) and \ - ma_short[i] < ma_short[extreIndex]*(1+filter_range): - ma_short[i] = ma_short[extreIndex] - #print i,ma_short[i] - - xticklabels = df['date'].apply(lambda x : str(x)).get_values() - # print xticklabels[:5] - # print xticklabels[-5:] - - #plt.plot(df['date'].get_values(), ma_short.get_values(), label=code, color="r", linewidth=1) - #plt.plot(df['date'].get_values(), ma_short.get_values(), color="r") - - def wavlet_plt(): - # trick to get the axes - fig,ax = plt.subplots() - - xValues = close_price[-200:] - ax.plot(xValues, label=code, color="r", linewidth=1) - zValues = cwavelet.getWaveletData(xValues, 'db2', 2, 'sqtwolog') - zxValue = np.arange(0,len(zValues),1) - #plt.figure(figsize=(16,8)) - - ax.plot(zxValue, zValues, color="b", linewidth=2) - ax.grid() - - # make ticks and tick labels - xticks=range(0, len(xValues)+1,10) - #xticklabels=['2000-01-0'+str(n) for n in range(1,len(xValues)+1)] - xticklabels = df['date'].apply(lambda x : str(x)).get_values() - - - # set ticks and tick labels - ax.set_xticks(xticks) - ax.set_xticklabels(xticklabels,rotation=15) - - #plt.legend() - plt.show() - - min_index_pre = 0 #前一个极小值 - max_index_pre = 0 #前一个极大值 - - keep_stop_up_price = 0 - keep_stop_down_price = 0 - - stockPos = StockPosition(50000, code) - - #for i in range(prama_ma_short+1, len(ma_short)-1): - for i in range(prama_ma_long-1, len(ma_short)-1): - # print prama_ma_long, len(ma_short)-1 - # print ma_short[prama_ma_long] - # print ma_long[prama_ma_long] - - #滤波后的均线走平时(即处于滤波区间内),将其识别为一个点 - index_post = i+1 - while (ma_short[index_post] == ma_short[i] and index_post < len(ma_short) - 1): - index_post += 1 - - # 长均线保护策略: - # bLongMA_forbid_buy = ma_short[i] < ma_long[i] # 买入保护 - # bLongMA_forbid_sale = not bLongMA_forbid_buy # 卖出保护 - # - # if bLongMA_forbid_buy and signal == SIGNAL_BUY: - # signal = SIGNAL_SALE - # stockPos.sale(close_price[i], str(df.ix[i, 'date'])) - # min_index_pre = 0 - # max_index_pre = 0 - # keep_stop_up_price = 0 - # keep_stop_down_price = 0 - # continue - # if bLongMA_forbid_buy and signal == SIGNAL_SALE: - # continue - - # if len(stockPos.transaction_records): # 有交易以后才考虑此情况 - # signal = SIGNAL_BUY - # stockPos.buy(close_price[i], str(df.ix[i, 'date'])) - # #print '买入:', close_price[i], ' ', str(df.ix[i, 'date']) - # continue - - # 高低点比较策略 - if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[index_post]: # 极大值 - # <卖出> 如果当前高点比前一个高点的向下漂移项低,则空头开仓或持有空头; - # <买入> 如果当前高点比前一个高点的向上漂移项高,则多头开仓或持有多头; - if max_index_pre > 0 and i > max_index_pre: - - if signal == SIGNAL_BUY and ma_short[i] < ma_short[max_index_pre] - drift*(i-max_index_pre): - signal = SIGNAL_SALE - stockPos.sale(close_price[i], str(df.ix[i, 'date'])) - min_index_pre = 0 - max_index_pre = 0 - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - elif signal == SIGNAL_SALE and ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): - signal = SIGNAL_BUY - stockPos.buy(close_price[i], str(df.ix[i, 'date'])) - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - - max_index_pre = i - elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[index_post]: # 极小值 - # < 买入 > 如果当前低点比前一个低点的向上漂移项高,则多头开仓或持有多头; - # < 卖出 > 如果当前低点比前一个低点的向下漂移项低,则空头开仓或持有空头 - if min_index_pre > 0 and i > min_index_pre: - if signal == SIGNAL_SALE and ma_short[i] > ma_short[min_index_pre] + drift*(i-min_index_pre): - signal = SIGNAL_BUY - stockPos.buy(close_price[i], str(df.ix[i, 'date'])) - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - elif signal == SIGNAL_BUY and ma_short[i] > ma_short[min_index_pre] - drift*(i-min_index_pre): - signal = SIGNAL_SALE - stockPos.sale(close_price[i], str(df.ix[i, 'date'])) - min_index_pre = 0 - max_index_pre = 0 - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - - min_index_pre = i - - # 高低点突破策略 - # <卖出>如果滤波后的均线比前一个低点的向下漂移项低,则空头开仓或持有空头。 - elif signal == SIGNAL_BUY and min_index_pre > 0 and ma_short[i] < ma_short[min_index_pre] - drift*(i-min_index_pre): - signal = SIGNAL_SALE - stockPos.sale(close_price[i], str(df.ix[i, 'date'])) - min_index_pre = 0 - max_index_pre = 0 - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - - # <买入>如果滤波后的均线比前一个高点的向上漂移项高,则多头开仓或持有多头。 - elif signal == SIGNAL_SALE and max_index_pre > 0 and ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): - signal = SIGNAL_BUY - stockPos.buy(close_price[i], str(df.ix[i, 'date'])) - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - - # 大波段保护策略 - ## 向上的大波段 - if min_index_pre > 0 and close_price[i] >= ma_short[min_index_pre] * (1 + param_big_band): - if close_price[i] * (1 - protect_big_band) > keep_stop_up_price: - keep_stop_up_price = close_price[i] * (1 - protect_big_band) # 止盈位 - keep_stop_up_index = i - if signal == SIGNAL_BUY and keep_stop_up_price > 0 and \ - close_price[i] < keep_stop_up_price + drift*(i-keep_stop_up_index): - signal = SIGNAL_SALE - stockPos.sale(close_price[i], str(df.ix[i, 'date'])) - min_index_pre = 0 - max_index_pre = 0 - keep_stop_up_price = 0 - keep_stop_down_price = 0 - continue - - ## 向下的大波段 - if max_index_pre > 0 and close_price[i] <= ma_short[max_index_pre] * (1 - param_big_band): - if keep_stop_down_price == 0 or close_price[i] * (1 + protect_big_band) < keep_stop_down_price: - keep_stop_down_price = close_price[i] * (1 + protect_big_band) # 止损位 - keep_stop_down_index = i - if signal == SIGNAL_SALE and keep_stop_down_price > 0 and \ - close_price[i] > keep_stop_down_price + drift * (i + keep_stop_down_index): - - signal = SIGNAL_BUY - keep_stop_up_price = 0 - keep_stop_down_price = 0 - stockPos.buy(close_price[i], str(df.ix[i, 'date'])) - continue - - stockPos.current_price = close_price[-1] - stockPos.summary() - - print '交易结束' - - #plt.grid() - #plt.legend() - #plt.show() - return stockPos - -class StockPosition(): - - def __init__(self, cash, code): - self.code = code - self.init_cash = cash - self.cash = cash - self.stock_count = 0 - self.transaction_records = {} # {2016-05-05: ('BUY', 20.1元, 1000股), 2016-03-01: ('SALE', 23.0元, 200股)} - self.current_price = 0 - - def buy(self, price, buy_date, buy_ratio=1.0): - """ - :param price: - :param buy_date: - :param buy_ratio: 默认为1, 以所有现金购买; - :return: - """ - count = self.cash / price - count = (int)(count / 100) * 100 - self.cash = self.cash - price * count - self.stock_count = count - self.transaction_records[buy_date] = ('BUY', price, count) - print buy_date, 'BUY', price, count - a = 0 - - def sale(self, price, sale_date, sale_ratio=1.0): - """ - :param price: - :param sale_date: - :param sale_ratio: 默认为1, 卖出所有; - :return: - """ - money = price * self.stock_count - self.cash += money - - dates = self.transaction_records.keys() - dates.sort() - data = self.transaction_records.get(dates[-1]) - price_buy = data[1] - - self.transaction_records[sale_date] = ('SALE', price, self.stock_count) - print sale_date, 'SALE', price, self.stock_count, "{:.2f}%".format((price-price_buy)/price_buy*100) - - self.stock_count = 0 - - def summary(self, price = 0): - """ - 统计时的股价 - :param price: - :return: - """ - if price == 0: - price = self.current_price - - cash_now = self.cash + self.stock_count * price - out1 = '交易次数:{}'.format(len(self.transaction_records)) - out2 = "收益率:{}%".format((cash_now - self.init_cash) / self.init_cash * 100) - print self.code, out1, out2 - return (cash_now - self.init_cash) / self.init_cash * 100, len(self.transaction_records) - -if __name__ == "__main__": - list_stock = ['600011','002600','002505','000725','000783','600048','300315','002167','601001'] - result = [] -# for code in list_stock: -# result.append(tread_track_backtest(code)) -# print '平均盈亏',sum(result)/len(list_stock), '%' - #result += tread_track('150172') - # df = ts.get_realtime_quotes(list_stock) - # for index in df.index: - # tread_track_live_trading(list_stock[index], df.iloc[index]['price']) - - - # import tushare as ts - # df = ts.get_hs300s() - # print df.head() - # stockPoss = [tread_track_backtest(code) for code in df['code'].get_values()[::]] - # - # result_list = list() - # for stockPos in stockPoss: - # if stockPos: - # r1, r2 = stockPos.summary() - # result_list.append((stockPos.code, r2, r1)) - # result_list = sorted(result_list, key = lambda x : x[2]) - # print result_list[0] - # print result_list[-1] - - tread_track_backtest('002236') - - - - - - - - - - \ No newline at end of file +#!/usr/local/bin/python +#coding=utf-8 +# 趋势追踪策略 +""" +http://t.cn/RqQv0JW +""" + +import pandas as pd +import matplotlib.pyplot as plt +import numpy as np +# from data_process.data_get import get_stock_k_line +from trade_process import efund_mail2 +from tushare.util import dateu as du +import datetime +import tushare as ts +import cwavelet +from macd_back_test import match +#参数 +prama_ma_short = 3 # 短均线 +prama_ma_long = 7 # 长均线 +prama_ma_long20 = 15 # 长均线 +prama_ma_long30 = 20 # 长均线 +filter_range = 0.004 # 滤波区间 +drift = 0.0015 #漂移项 +param_big_band = 0.02 #大波段判断条件 +protect_big_band = 0.002 # 大波段保护止赢点 + +SIGNAL_BUY = 1 #买 +SIGNAL_SALE = -1 #卖 +SIGNAL_DEFAULT = 0 + +# 趋势追踪实时交易 +# 参数 +# code:股票代码 +# df: 个股的K线数据 +# price_now:实时股价 +def tread_track_live_trading(code, price_now, df=None): + # 分析某个时间段的股票 + #dateS = datetime.datetime.today().date() + datetime.timedelta(-100) + #date_start = dateS.strftime("%Y-%m-%d") + #df = df[df.index > date_start] + try: + fundlist = efund_mail2.get_histrydata(code,365) + df = pd.DataFrame(fundlist[::-1], columns=['date', 'close', 'countclose','change']) + #df = df.reindex(df.index[::-1]) + except Exception as e: + print str(e) + return + #print df + close_price = df['close'].get_values() + close_price = np.append(close_price, float(price_now)) + ma_short = pd.rolling_mean(close_price, prama_ma_short) + ma_long = pd.rolling_mean(close_price, prama_ma_long) + ma_long20 = pd.rolling_mean(close_price, prama_ma_long20) + ma_long30 = pd.rolling_mean(close_price, prama_ma_long30) + #print ma_short + + signal = SIGNAL_SALE + print '趋势追踪实时交易,交易开始' + + plt.figure(figsize=(8,5)) + plt.plot(range(len(ma_short)), ma_short, label=code, color="b", linewidth=1) + plt.plot(range(len(ma_long)), ma_long, label=code, color="r", linewidth=1) + plt.plot(range(len(ma_long20)), ma_long20, label=code, color="g", linewidth=1) + plt.plot(range(len(ma_long30)), ma_long30, label=code, linewidth=1) + plt.plot(range(len(close_price)), close_price, label='close', linewidth=1) + plt.xlabel("Time") + plt.ylabel("Price") + plt.savefig() + + # 过滤微小波动 + extreIndex = -1 #极值点的索引 + for i in range(prama_ma_short+1, len(ma_short)-1): + bMax = ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1] # 极大值的条件 + bMin = ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1] # 极小值的条件 + if bMax or bMin: + extreIndex = i + elif extreIndex > 0: + if ma_short[i] > ma_short[extreIndex]*(1-filter_range) and \ + ma_short[i] < ma_short[extreIndex]*(1+filter_range): + ma_short[i] = ma_short[extreIndex] + #print i,ma_short[i] + + #plt.plot(range(len(ma_short.get_values())), ma_short.get_values(), label=code, color="r", linewidth=1) + + # 交易次数 + count_sale = 0 + count_buy = 0 + + min_index_pre = 0 #前一个极小值 + max_index_pre = 0 #前一个极大值 + + # 止损位 + keep_stop_price = 0 + keep_stop_index = 0 + + # 止赢位 + keep_win_price = 0 + keep_win_index = 0 + + total = 0 + price_buy = 0 + price_init = 0 + money_init = 50000 + stock_money = money_init + stock_count = 0 + + #for i in range(prama_ma_short+1, len(ma_short)-1): + for i in range(len(ma_short)-30, len(ma_short)-1): + + #滤波后的均线走平时(即处于滤波区间内),将其识别为一个点 + index_post = i+1 + + try: + while(ma_short[index_post] == ma_short[i] and index_post < len(ma_short)-1): + index_post += 1 + except Exception as e: + print str(e) + + # 长均线保护策略 + bLongMA_protect_close = True + try: + bLongMA_protect_close = ma_short[i] > ma_long[i] # 长均线保护是否关闭 + except Exception as e: + print str(e) + #if bLongMA_protect_close == False: + #print "长均线保护打开", i + + # 高低点比较策略 + if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[index_post]: + #print '极大值:', ma_short[i], 'pos:', i + if bLongMA_protect_close and max_index_pre > 0 and ma_short[i] < ma_short[max_index_pre] + drift*(i-max_index_pre) and signal == SIGNAL_BUY: + signal = SIGNAL_SALE + print '卖出:', close_price[i], 'pos:', i + count_sale += 1 + total += close_price[i] - price_buy + + stock_money += stock_count * close_price[i] + stock_count = 0 + + max_index_pre = i + elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[index_post]: + #print '极小值:', ma_short[i], 'pos:', i + if bLongMA_protect_close and min_index_pre > 0 and ma_short[i] > ma_short[min_index_pre] + drift*(i-min_index_pre) and signal == SIGNAL_SALE: + signal = SIGNAL_BUY + print '买入:', close_price[i], 'pos:', i + count_buy += 1 + price_buy = close_price[i] + if price_init == 0: + price_init = price_buy + + stock_count = (stock_money/100)/close_price[i]*100 + stock_money = stock_money - stock_count*close_price[i] + min_index_pre = i + + # 高低点突破策略 + # 股价突破前一个低点加漂移项,则卖出 + elif bLongMA_protect_close and signal == SIGNAL_BUY and min_index_pre > 0 and \ + ma_short[i] < ma_short[min_index_pre] + drift*(i-min_index_pre): + signal = SIGNAL_SALE + print '卖出:', close_price[i], 'pos:', i + count_sale += 1 + total += close_price[i] - price_buy + + stock_money += stock_count * close_price[i] + stock_count = 0 + + # 股价突破前一个高点加漂移项,则买入 + elif bLongMA_protect_close and signal == SIGNAL_SALE and max_index_pre > 0 and \ + ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): + signal = SIGNAL_BUY + print '买入:', close_price[i], 'pos:', i + count_buy += 1 + price_buy = close_price[i] + + stock_count = (stock_money/100)/close_price[i]*100 + stock_money = stock_money - stock_count*close_price[i] + + # 大波段保护策略 + elif min_index_pre > 0 and ma_short[i] >= ma_short[min_index_pre]*(1+param_big_band): + keep_stop_price = ma_short[i] * (1-protect_big_band) #止损位 + keep_stop_index = i + elif bLongMA_protect_close and signal == SIGNAL_BUY and keep_stop_price > 0 and \ + ma_short[i] < keep_stop_price + drift*(i-keep_stop_index): + signal = SIGNAL_SALE + print '卖出:', close_price[i], 'pos:', i + count_sale += 1 + total += close_price[i] - price_buy + + stock_money += stock_count * close_price[i] + stock_count = 0 + print "buy count:", count_buy + print "sale count:", count_sale + + if stock_count > 0: + stock_money += stock_count * close_price[-1] + total += close_price[-1] - price_buy + + print "每股盈利:", total, "收益率:", (stock_money-money_init)/money_init*100,"%\n" + print '交易结束' + + # plt.grid() + # plt.legend() + # plt.show() + return (stock_money-money_init)/money_init*100 + +# 趋势追踪回测 +# 参数 +# code:股票代码 +# df: 个股的K线数据 +def tread_track_backtest(code, fundlist,avg): + # df = get_stock_k_line(code, date_start='2015-12-30', date_end='2016-05-05') + # df=efund_mail2.get_histrydata(code,365) + # fundlist = efund_mail2.get_histrydata(code, 365) + df = pd.DataFrame(fundlist[::-1], columns=['date', 'close', 'countclose', 'change']) + if len(df) == 0: + return None + # print df.head(2) + # 分析某个时间段的股票 + #dateS = datetime.datetime.today().date() + datetime.timedelta(-100) + #date_start = dateS.strftime("%Y-%m-%d") + #df = df[df.index > date_start] + #print df + + # try: + # df = df.reindex(df.index[::-1]) + # except Exception as e: + # print str(e) + # return + #print df + + close_price = df['close'].get_values() + ma_short = pd.rolling_mean(df['close'], avg[0]) + ma_long = pd.rolling_mean(df['close'], avg[1]) + ma_long20 = pd.rolling_mean(close_price, avg[2]) + # ma_long30 = pd.rolling_mean(close_price, prama_ma_long30) + #print ma_short + + signal = SIGNAL_SALE + + print '趋势追踪回测,交易开始' + + #plt.figure(figsize=(16,8)) + #plt.plot(range(len(ma_short)), ma_short.get_values(), label=code, color="b", linewidth=1) + plt.figure(figsize=(6, 3)) + plt.plot(range(len(ma_short)), ma_short, label=code, color="b", linewidth=1) + plt.plot(range(len(ma_long)), ma_long, label=code, color="r", linewidth=1) + plt.plot(range(len(ma_long20)), ma_long20, label=code, color="g", linewidth=1) + # plt.plot(range(len(ma_long30)), ma_long30, label=code, linewidth=1) + plt.plot(range(len(close_price)), close_price, label='close', linewidth=1) + plt.xlabel("Time") + plt.ylabel("Price") + plt.title(code[1]) + plt.savefig(r'E:\03IT\GitHub\stock-2\trade_process\stockdata\\'+code[1]+'.jpg') + + + # 判断极点 + # for i in range(prama_ma_short+1, len(ma_short)-1): + # if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1]: + # print '极大值:', ma_short[i], 'pos:', i + # + # elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1]: + # print '极小值:', ma_short[i], 'pos:', i + + # 过滤微小波动 + extreIndex = -1 #极值点的索引 + for i in range(prama_ma_short+1, len(ma_short)-1): + bMax = ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[i+1] # 极大值的条件 + bMin = ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[i+1] # 极小值的条件 + if bMax or bMin: + extreIndex = i + elif extreIndex > 0: + if ma_short[i] > ma_short[extreIndex]*(1-filter_range) and \ + ma_short[i] < ma_short[extreIndex]*(1+filter_range): + ma_short[i] = ma_short[extreIndex] + #print i,ma_short[i] + + xticklabels = df['date'].apply(lambda x : str(x)).get_values() + # print xticklabels[:5] + # print xticklabels[-5:] + + #plt.plot(df['date'].get_values(), ma_short.get_values(), label=code, color="r", linewidth=1) + #plt.plot(df['date'].get_values(), ma_short.get_values(), color="r") + + def wavlet_plt(): + # trick to get the axes + fig,ax = plt.subplots() + + xValues = close_price[-200:] + ax.plot(xValues, label=code, color="r", linewidth=1) + zValues = cwavelet.getWaveletData(xValues, 'db2', 2, 'sqtwolog') + zxValue = np.arange(0,len(zValues),1) + #plt.figure(figsize=(16,8)) + + ax.plot(zxValue, zValues, color="b", linewidth=2) + ax.grid() + + # make ticks and tick labels + xticks=range(0, len(xValues)+1,10) + #xticklabels=['2000-01-0'+str(n) for n in range(1,len(xValues)+1)] + xticklabels = df['date'].apply(lambda x : str(x)).get_values() + + + # set ticks and tick labels + ax.set_xticks(xticks) + ax.set_xticklabels(xticklabels,rotation=15) + + #plt.legend() + plt.show() + + min_index_pre = 0 #前一个极小值 + max_index_pre = 0 #前一个极大值 + + keep_stop_up_price = 0 + keep_stop_down_price = 0 + + stockPos = StockPosition(50000, code) + + #for i in range(prama_ma_short+1, len(ma_short)-1): + for i in range(prama_ma_long-1, len(ma_short)-1): + # print prama_ma_long, len(ma_short)-1 + # print ma_short[prama_ma_long] + # print ma_long[prama_ma_long] + + #滤波后的均线走平时(即处于滤波区间内),将其识别为一个点 + index_post = i+1 + while (ma_short[index_post] == ma_short[i] and index_post < len(ma_short) - 1): + index_post += 1 + + # 长均线保护策略: + # bLongMA_forbid_buy = ma_short[i] < ma_long[i] # 买入保护 + # bLongMA_forbid_sale = not bLongMA_forbid_buy # 卖出保护 + # + # if bLongMA_forbid_buy and signal == SIGNAL_BUY: + # signal = SIGNAL_SALE + # stockPos.sale(close_price[i], str(df.ix[i, 'date'])) + # min_index_pre = 0 + # max_index_pre = 0 + # keep_stop_up_price = 0 + # keep_stop_down_price = 0 + # continue + # if bLongMA_forbid_buy and signal == SIGNAL_SALE: + # continue + + # if len(stockPos.transaction_records): # 有交易以后才考虑此情况 + # signal = SIGNAL_BUY + # stockPos.buy(close_price[i], str(df.ix[i, 'date'])) + # #print '买入:', close_price[i], ' ', str(df.ix[i, 'date']) + # continue + + # 高低点比较策略 + if ma_short[i] > ma_short[i-1] and ma_short[i] > ma_short[index_post]: # 极大值 + # <卖出> 如果当前高点比前一个高点的向下漂移项低,则空头开仓或持有空头; + # <买入> 如果当前高点比前一个高点的向上漂移项高,则多头开仓或持有多头; + if max_index_pre > 0 and i > max_index_pre: + + if signal == SIGNAL_BUY and ma_short[i] < ma_short[max_index_pre] - drift*(i-max_index_pre): + signal = SIGNAL_SALE + stockPos.sale(close_price[i], str(df.ix[i, 'date'])) + min_index_pre = 0 + max_index_pre = 0 + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + elif signal == SIGNAL_SALE and ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): + signal = SIGNAL_BUY + stockPos.buy(close_price[i], str(df.ix[i, 'date'])) + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + + max_index_pre = i + elif ma_short[i] < ma_short[i-1] and ma_short[i] < ma_short[index_post]: # 极小值 + # < 买入 > 如果当前低点比前一个低点的向上漂移项高,则多头开仓或持有多头; + # < 卖出 > 如果当前低点比前一个低点的向下漂移项低,则空头开仓或持有空头 + if min_index_pre > 0 and i > min_index_pre: + if signal == SIGNAL_SALE and ma_short[i] > ma_short[min_index_pre] + drift*(i-min_index_pre): + signal = SIGNAL_BUY + stockPos.buy(close_price[i], str(df.ix[i, 'date'])) + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + elif signal == SIGNAL_BUY and ma_short[i] > ma_short[min_index_pre] - drift*(i-min_index_pre): + signal = SIGNAL_SALE + stockPos.sale(close_price[i], str(df.ix[i, 'date'])) + min_index_pre = 0 + max_index_pre = 0 + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + + min_index_pre = i + + # 高低点突破策略 + # <卖出>如果滤波后的均线比前一个低点的向下漂移项低,则空头开仓或持有空头。 + if signal == SIGNAL_BUY and min_index_pre > 0 and ma_short[i] < ma_short[min_index_pre] - drift*(i-min_index_pre): + signal = SIGNAL_SALE + stockPos.sale(close_price[i], str(df.ix[i, 'date'])) + min_index_pre = 0 + max_index_pre = 0 + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + + # <买入>如果滤波后的均线比前一个高点的向上漂移项高,则多头开仓或持有多头。 + elif signal == SIGNAL_SALE and max_index_pre > 0 and ma_short[i] > ma_short[max_index_pre] + drift*(i-max_index_pre): + signal = SIGNAL_BUY + stockPos.buy(close_price[i], str(df.ix[i, 'date'])) + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + + # 大波段保护策略 + ## 向上的大波段 + if min_index_pre > 0 and close_price[i] >= ma_short[min_index_pre] * (1 + param_big_band): + if close_price[i] * (1 - protect_big_band) > keep_stop_up_price: + keep_stop_up_price = close_price[i] * (1 - protect_big_band) # 止盈位 + keep_stop_up_index = i + if signal == SIGNAL_BUY and keep_stop_up_price > 0 and \ + close_price[i] < keep_stop_up_price + drift*(i-keep_stop_up_index): + signal = SIGNAL_SALE + stockPos.sale(close_price[i], str(df.ix[i, 'date'])) + min_index_pre = 0 + max_index_pre = 0 + keep_stop_up_price = 0 + keep_stop_down_price = 0 + continue + + ## 向下的大波段 + if max_index_pre > 0 and close_price[i] <= ma_short[max_index_pre] * (1 - param_big_band): + if keep_stop_down_price == 0 or close_price[i] * (1 + protect_big_band) < keep_stop_down_price: + keep_stop_down_price = close_price[i] * (1 + protect_big_band) # 止损位 + keep_stop_down_index = i + if signal == SIGNAL_SALE and keep_stop_down_price > 0 and \ + close_price[i] > keep_stop_down_price + drift * (i + keep_stop_down_index): + + signal = SIGNAL_BUY + keep_stop_up_price = 0 + keep_stop_down_price = 0 + stockPos.buy(close_price[i], str(df.ix[i, 'date'])) + continue + stockPos.current_price = close_price[-1] + stockPos.startcountPrice = close_price[0] + + stockPos.summary() + print '交易结束' + # plt.grid() + # plt.legend() + # plt.show() + return stockPos + +class StockPosition(): + + def __init__(self, cash, code): + self.code = code + self.init_cash = cash + self.cash = cash + self.stock_count = 0 + self.transaction_records = {} # {2016-05-05: ('BUY', 20.1元, 1000股), 2016-03-01: ('SALE', 23.0元, 200股)} + self.current_price = 0 + self.startcountPrice=0 + + + def buy(self, price, buy_date, buy_ratio=1.0): + """ + :param price: + :param buy_date: + :param buy_ratio: 默认为1, 以所有现金购买; + :return: + """ + count = self.cash / price + count = (int)(count / 100) * 100 + self.cash = self.cash - price * count + self.stock_count = count + self.transaction_records[buy_date] = ('BUY', price, count) + print buy_date, 'BUY', price, count + a = 0 + + def sale(self, price, sale_date, sale_ratio=1.0): + """ + :param price: + :param sale_date: + :param sale_ratio: 默认为1, 卖出所有; + :return: + """ + money = price * self.stock_count + self.cash += money + + dates = self.transaction_records.keys() + dates.sort() + data = self.transaction_records.get(dates[-1]) + price_buy = data[1] + + self.transaction_records[sale_date] = ('SALE', price, self.stock_count) + print sale_date, 'SALE', price, self.stock_count, "{:.2f}%".format((price-price_buy)/price_buy*100) + + self.stock_count = 0 + + def summary(self, price = 0): + """ + 统计时的股价 + :param price: + :return: + """ + if price == 0: + price = self.current_price + initcash_now=self.init_cash*(self.current_price/self.startcountPrice) + cash_now = self.cash + self.stock_count * price + out1 = '交易次数:{}'.format(len(self.transaction_records)) + out2 = "收益率:{}%".format((cash_now - self.init_cash) / self.init_cash * 100) + out3= "超额收益率:{}%".format((cash_now - initcash_now) / self.init_cash * 100) + print self.code, out1, out2 ,out3 + return (cash_now - self.init_cash) / self.init_cash * 100, len(self.transaction_records) + +def stock_trader_main(code): + codelist = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + name = ['eGold', 'eoil', '创业板', '上证50', '沪深300', '恒生', '易方达纳斯达克100', '安心b'] + buysell = [] + stockTxtNewPath = "E:/03IT/GitHub/stock-2/stockdata/" + 'GAOpt100.txt' + file_to_read = open(stockTxtNewPath, 'r') + lines = file_to_read.readlines() # 整行读取数据 + for i in codelist: + if not lines: + break + pass + else: + contmatch = match('MA', i, lines) + if len(contmatch) != 0: + Avg = [int(contmatch[0][1].split(',')[0]), int(contmatch[0][1].split(',')[1]), + int(contmatch[0][1].split(',')[2])] + elif (len(contmatch)==0): + Avg = ([3, 8, 40]) + # save(strfundcode=i ,numdays=365*1) + ifundlist = efund_mail2.get_histrydata(i, 365) + buysell.append(tread_track_backtest(i,ifundlist,Avg)) + + for i in buysell: + i.summary() + # url = 'http://fund.eastmoney.com/%s.html' % i[0] + # todayvalue = efund_mail2.spider(url) + # if todayvalue != None: + # tread_track_live_trading(i,todayvalue[1]) + +if __name__ == "__main__": + # list_stock = ['600011','002600','002505','000725','000783','600048','300315','002167','601001'] + # result = [] + # for code in list_stock: + # result.append(tread_track_backtest(code)) + # print '平均盈亏',sum(result)/len(list_stock), '%' + #result += tread_track('150172') + # df = ts.get_realtime_quotes(list_stock) + # for index in df.index: + # tread_track_live_trading(list_stock[index], df.iloc[index]['price']) + + + # import tushare as ts + # df = ts.get_hs300s() + # print df.head() + # stockPoss = [tread_track_backtest(code) for code in df['code'].get_values()[::]] + # + # result_list = list() + # for stockPos in stockPoss: + # if stockPos: + # r1, r2 = stockPos.summary() + # result_list.append((stockPos.code, r2, r1)) + # result_list = sorted(result_list, key = lambda x : x[2]) + # print result_list[0] + # print result_list[-1] + code = [['002963', 'egold'], ['003321', 'eoil'], ['004744', 'eGEI'], ['110003', 'eSSE50'], ['110020', 'HS300'], + ['110031', 'eHSI'], ['161130', 'eNASDAQ100'], ['110028', 'anxinB'], ['110022', 'eConsumption '], + ['161125', 'SPX500']] + stock_trader_main(code) + + + + + + + + + + + + diff --git a/trade_process/strategy/tread_tracking.pyc b/trade_process/strategy/tread_tracking.pyc new file mode 100644 index 0000000..85e29b8 Binary files /dev/null and b/trade_process/strategy/tread_tracking.pyc differ diff --git a/trade_process/strategy/turtletrader.py b/trade_process/strategy/turtletrader.py index 8df6465..1d78217 100644 --- a/trade_process/strategy/turtletrader.py +++ b/trade_process/strategy/turtletrader.py @@ -1,11 +1,11 @@ -#!/usr/local/bin/python -#coding=utf-8 - -# 海龟交易系统 -# 参数: -# code:股票代码 -# klineValue: k线历史数据 -def turtle(code, klineValue): - print 'begin turtle' - +#!/usr/local/bin/python +#coding=utf-8 + +# 海龟交易系统 +# 参数: +# code:股票代码 +# klineValue: k线历史数据 +def turtle(code, klineValue): + print 'begin turtle' + print 'end turtle' \ No newline at end of file diff --git "a/trade_process/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" "b/trade_process/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" new file mode 100644 index 0000000..d9087fd --- /dev/null +++ "b/trade_process/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" @@ -0,0 +1,187 @@ +1 001740 光大中国制造2025混合 混合型 9 22 7 17 13.75 +2 260108 景顺长城新兴成长混合 混合型 24 11 9 18 15.5 +3 162605 景顺长城鼎益混合(LOF) 混合型 27 10 10 15 15.5 +4 110022 易方达消费行业 股票型 45 15 8 3 17.75 +5 161725 招商中证白酒指数分级 股票指数 70 4 3 1 19.5 +6 000248 汇添富中证主要消费ETF联接 联接基金 58 6 14 8 21.5 +7 160222 国泰国证食品饮料行业指数分级 股票指数 65 5 11 5 21.5 +8 000083 汇添富消费行业混合 混合型 42 24 16 34 29.0 +9 550016 信诚至远C 分级杠杆 1 3 49 68 30.25 +10 519664 银河美丽混合A 混合型 16 23 18 66 30.75 +11 481012 工银深证红利联接 联接基金 15 54 25 30 31.0 +12 160632 鹏华酒分级 股票指数 100 7 21 7 33.75 +13 206007 鹏华消费优选混合 混合型 35 34 19 51 34.75 +14 070032 嘉实优化红利混合 混合型 49 28 12 52 35.25 +15 519665 银河美丽混合C 混合型 21 31 22 70 36.0 +16 001542 国泰互联网+股票 股票型 100 35 6 6 36.75 +17 180012 银华富裕主题混合 混合型 100 33 17 4 38.5 +18 000854 鹏华养老产业 股票型 34 26 32 64 39.0 +19 001606 农银工业4.0混合 混合型 55 25 30 65 43.75 +20 000462 农银主题轮动混合 混合型 67 14 23 71 43.75 +21 110003 易方达上证50指数A 股票指数 33 59 60 26 44.5 +22 001287 安信优势增长混合A 混合型 32 13 72 62 44.75 +23 519056 海富通内需热点混合 混合型 11 12 76 84 45.75 +24 000431 鹏华品牌传承混合 混合型 46 27 35 76 46.0 +25 000619 东方红产业升级混合 混合型 100 48 26 13 46.75 +26 040008 华安策略优选混合 混合型 44 100 15 29 47.0 +27 004008 中融鑫思路混合A 混合型 100 1 4 86 47.75 +28 004009 中融鑫思路混合C 混合型 100 2 5 87 48.5 +29 000742 国泰新经济灵活配置混合 混合型 100 75 13 10 49.5 +30 001387 中融新经济混合A 混合型 100 100 1 2 50.75 +31 001112 东方红中国优势混合 混合型 100 69 20 16 51.25 +32 360007 光大保德信优势配置混合 混合型 14 62 71 63 52.5 +33 530015 建信深证60联接 联接基金 28 94 46 44 53.0 +34 260103 景顺长城动力平衡 混合型 18 95 65 35 53.25 +35 540012 汇丰晋信恒生龙头指数A 股票指数 38 100 54 23 53.75 +36 260110 景顺长城精选蓝筹混合 混合型 48 79 43 45 53.75 +37 260116 景顺长城核心竞争力混合A 混合型 52 87 38 38 53.75 +38 001076 易方达改革红利混合 混合型 82 9 48 79 54.5 +39 519690 交银稳健配置混合A 混合型 100 45 24 55 56.0 +40 310388 申万菱信消费增长混合 混合型 100 32 29 67 57.0 +41 001631 天弘中证食品饮料指数A 股票指数 100 16 85 28 57.25 +42 660010 农银策略精选混合 混合型 100 30 73 36 59.75 +43 001632 天弘中证食品饮料指数C 股票指数 100 17 92 31 60.0 +44 020005 国泰金马稳健 混合型 88 63 61 32 61.0 +45 004528 长盛盛通纯债A none 2 43 100 100 61.25 +46 001583 安信新常态股票 股票型 53 100 31 61 61.25 +47 003119 博时鑫源混合A 混合型 4 42 100 100 61.5 +48 003120 博时鑫源混合C 混合型 3 44 100 100 61.75 +49 001281 长安鑫利优选混合A 混合型 100 64 34 49 61.75 +50 169101 东方红睿丰混合 混合型 100 100 36 12 62.0 +51 165312 建信央视50 股票指数 100 100 28 21 62.25 +52 002072 长安鑫利优选混合C 混合型 100 66 37 50 63.25 +53 001208 诺安低碳经济股票 股票型 100 37 74 43 63.5 +54 001170 泰达宏利复兴混合 混合型 76 65 41 73 63.75 +55 000634 富国天盛灵活配置混合 混合型 39 19 100 100 64.5 +56 160216 国泰商品 QDII 10 50 100 100 65.0 +57 001605 国富沪港深成长精选股票 股票型 40 21 100 100 65.25 +58 000029 富国宏观策略 混合型 43 18 100 100 65.25 +59 164906 交银中证海外中国互联网指数 QDII-指数 100 100 42 20 65.5 +60 160628 鹏华地产分级 股票指数 5 58 100 100 65.75 +61 519066 汇添富蓝筹稳健 混合型 100 100 27 39 66.5 +62 110011 易方达中小盘混合 混合型 100 100 57 11 67.0 +63 519606 国泰金鑫 股票型 100 100 51 19 67.5 +64 519772 交银新生活力灵活配置混合 混合型 100 8 67 96 67.75 +65 217027 招商央视财经50指数A 股票指数 100 100 52 22 68.5 +66 161129 易方达原油A类人民币 QDII 25 52 100 100 69.25 +67 020026 国泰成长优选混合 混合型 100 100 64 14 69.5 +68 003321 易方达原油C类人民币 QDII 26 55 100 100 70.25 +69 519068 汇添富成长焦点混合 混合型 100 100 33 48 70.25 +70 000835 华润元大富时中国A50指数 股票指数 37 100 98 47 70.5 +71 002124 广发新兴产业混合 混合型 17 67 100 100 71.0 +72 002121 广发沪港深新起点股票 股票型 47 100 47 92 71.5 +73 002853 华富元鑫灵活配置混合A 混合型 100 100 2 85 71.75 +74 540009 汇丰晋信消费红利 股票型 100 100 56 33 72.25 +75 001044 嘉实新消费股票 股票型 100 100 50 40 72.5 +76 163412 兴全轻资产混合(LOF) 混合型 54 39 100 100 73.25 +77 000934 国富大中华精选混合 QDII 100 100 84 9 73.25 +78 310398 申万菱信沪深300价值指数 股票指数 57 100 96 41 73.5 +79 241001 华宝海外中国成长混合 QDII 100 100 70 25 73.75 +80 001712 东方红优势精选混合 混合型 100 100 59 37 74.0 +81 002851 南方品质混合 混合型 77 91 40 89 74.25 +82 398061 中海消费混合 混合型 100 40 82 75 74.25 +83 000988 嘉实全球互联网股票人民币 QDII 100 100 75 24 74.75 +84 002624 广发优企精选混合 混合型 83 20 100 100 75.75 +85 164508 国富中证100指数增强分级 股票指数 50 100 99 56 76.25 +86 519225 海富通集利债券 债券型 6 100 100 100 76.5 +87 001179 德邦大健康灵活配置混合 混合型 100 93 55 58 76.5 +88 160218 国泰国证房地产行业指数分级 股票指数 7 100 100 100 76.75 +89 003243 上投摩根中国世纪人民币 QDII 100 61 53 93 76.75 +90 161721 招商沪深300地产指数分级 股票指数 8 100 100 100 77.0 +91 001892 长盛新兴成长混合 混合型 22 89 100 100 77.75 +92 001518 万家瑞兴 混合型 12 100 100 100 78.0 +93 501018 南方原油 QDII 36 76 100 100 78.0 +94 519185 万家精选混合 混合型 13 100 100 100 78.25 +95 000173 汇添富美丽30混合 混合型 100 46 88 81 78.75 +96 001865 前海开源事件驱动混合C 混合型 80 77 81 80 79.5 +97 001371 富国沪港深价值混合 混合型 100 100 91 27 79.5 +98 004642 南方房地产ETF联接A none 19 100 100 100 79.75 +99 002085 长盛互联网+混合 混合型 20 100 100 100 80.0 +100 000423 前海开源事件驱动混合A 混合型 84 78 80 78 80.0 +101 004643 南方房地产ETF联接C none 23 100 100 100 80.75 +102 000751 嘉实新兴产业股票 股票型 100 100 66 57 80.75 +103 002666 前海开源沪港深创新成长混合A 混合型 100 99 39 88 81.5 +104 570001 诺德价值优势混合 混合型 100 100 68 59 81.75 +105 001047 光大国企改革股票 股票型 29 100 100 100 82.25 +106 001725 汇添富高端制造股票 股票型 100 29 100 100 82.25 +107 020023 国泰事件驱动策略混合 混合型 100 100 87 42 82.25 +108 519191 万家新利灵活配置混合 混合型 30 100 100 100 82.5 +109 001581 华安沪港深通精选灵活配置混合 混合型 31 100 100 100 82.75 +110 001878 嘉实沪港深精选股票 股票型 100 100 44 90 83.5 +111 376510 上投大盘蓝筹 股票型 100 100 62 72 83.5 +112 180013 银华领先策略混合 混合型 100 36 100 100 84.0 +113 002667 前海开源沪港深创新成长混合C 混合型 100 100 45 91 84.0 +114 118001 易方达亚洲精选 QDII 100 100 83 53 84.0 +115 000127 农银行业领先混合 混合型 100 38 100 100 84.5 +116 110015 易方达行业领先混合 混合型 100 100 69 69 84.5 +117 001410 信达澳银新能源产业股票 股票型 100 100 78 60 84.5 +118 167301 方正富邦保险主题指数分级 股票指数 100 100 94 46 85.0 +119 003704 光大保德信事件驱动混合 混合型 41 100 100 100 85.25 +120 002189 农银汇理国企改革混合 混合型 100 41 100 100 85.25 +121 002697 中欧消费主题股票C 股票型 100 47 100 100 86.75 +122 320010 诺安中证100 股票指数 99 100 95 54 87.0 +123 100022 富国天瑞强势 混合型 100 49 100 100 87.25 +124 001626 国泰央企改革股票 股票型 51 100 100 100 87.75 +125 002621 中欧消费主题股票A 股票型 100 51 100 100 87.75 +126 001404 招商移动互联网产业股票基金 股票型 56 96 100 100 88.0 +127 003940 银华盛世精选灵活配置混合发起式 混合型 100 100 58 94 88.0 +128 519008 汇添富优势精选 混合型 100 53 100 100 88.25 +129 163406 兴全合润分级混合 混合型 100 56 100 100 89.0 +130 001236 博时丝路主题股票A 股票型 100 57 100 100 89.25 +131 002534 华安稳固收益债券A 债券型 100 100 63 95 89.5 +132 501301 华宝香港大盘 股票指数 59 100 100 100 89.75 +133 519671 银河沪深300价值 股票指数 60 100 100 100 90.0 +134 001657 长安鑫富领先混合 混合型 100 60 100 100 90.0 +135 001651 工银新蓝筹股票 股票型 61 100 100 100 90.25 +136 003154 华宝新活力混合 混合型 81 80 100 100 90.25 +137 162719 广发道琼斯石油指数A QDII-指数 62 100 100 100 90.5 +138 000167 广发聚优灵活配置混合A 混合型 100 100 79 83 90.5 +139 003261 安信沪深300增强发起式A 股票指数 63 100 100 100 90.75 +140 004243 广发道琼斯石油指数C QDII-指数 64 100 100 100 91.0 +141 000020 景顺长城品质投资混合 混合型 100 100 90 74 91.0 +142 003262 安信沪深300增强发起式C 股票指数 66 100 100 100 91.5 +143 163302 大摩资源优选混合(LOF) 混合型 68 100 100 100 92.0 +144 002595 博时工业4.0主题股票 股票型 100 68 100 100 92.0 +145 110010 易方达价值成长混合A 混合型 69 100 100 100 92.25 +146 004374 华泰保兴吉年丰混合发起A 混合型 100 70 100 100 92.5 +147 213010 宝盈中证100增强 股票指数 71 100 100 100 92.75 +148 004375 华泰保兴吉年丰混合发起C 混合型 100 71 100 100 92.75 +149 410009 华富量子生命力混合 混合型 72 100 100 100 93.0 +150 001458 广发中证全指主要消费联接A 联接基金 100 72 100 100 93.0 +151 519087 新华优选分红混合 混合型 73 100 100 100 93.25 +152 002976 广发中证全指主要消费联接C 联接基金 100 73 100 100 93.25 +153 004357 南方智慧混合 混合型 74 100 100 100 93.5 +154 519165 新华鑫利灵活配置 混合型 100 74 100 100 93.5 +155 002214 中海沪港深价值优选混合 混合型 100 100 77 97 93.5 +156 310358 申万菱信新经济混合 混合型 100 100 97 77 93.5 +157 002443 前海开源沪港深龙头精选混合 混合型 75 100 100 100 93.75 +158 350005 天治中国制造2025 混合型 100 100 93 82 93.75 +159 410008 华富中证100 股票指数 78 100 100 100 94.5 +160 481001 工银核心价值混合A 混合型 79 100 100 100 94.75 +161 000746 招商行业精选股票 股票型 100 81 100 100 95.25 +162 398021 中海能源策略 混合型 100 82 100 100 95.5 +163 001681 新华积极价值灵活配置混合 混合型 100 83 100 100 95.75 +164 160605 鹏华中国50 混合型 98 86 100 100 96.0 +165 002142 博时外延增长主题灵活配置混合 混合型 100 84 100 100 96.0 +166 519196 万家新兴蓝筹灵活配置混合 混合型 100 100 86 98 96.0 +167 502040 长盛上证50指数分级 股票指数 85 100 100 100 96.25 +168 001528 诺安先进制造股票 股票型 100 85 100 100 96.25 +169 162203 泰达宏利稳定混合 混合型 86 100 100 100 96.5 +170 001040 新华策略精选股票 股票型 87 100 100 100 96.75 +171 160624 鹏华消费领先混合 混合型 100 88 100 100 97.0 +172 003597 长盛盛腾混合C 混合型 100 100 89 99 97.0 +173 519706 交银深证300联接 联接基金 89 100 100 100 97.25 +174 501050 华夏上证50AH优选指数 股票指数 90 100 100 100 97.5 +175 519732 交银定期支付双息平衡混合 混合型 100 90 100 100 97.5 +176 163803 中银持续增长混合A 混合型 91 100 100 100 97.75 +177 240019 华宝上证180成长联接 联接基金 92 100 100 100 98.0 +178 001186 富国文体健康股票 股票型 100 92 100 100 98.0 +179 502020 国金上证50分级 股票指数 93 100 100 100 98.25 +180 399001 中海上证50 股票指数 94 100 100 100 98.5 +181 160716 嘉实基本面50 股票指数 95 100 100 100 98.75 +182 004477 嘉实沪港深回报混合 混合型 96 100 100 100 99.0 +183 070023 嘉实深证120联接 联接基金 97 100 100 100 99.25 +184 100026 富国天合稳健优选混合 混合型 100 97 100 100 99.25 +185 004183 富国产业升级混合 none 100 98 100 100 99.5 +186 001163 银华中国梦30股票 股票型 100 100 100 100 100.0 +187 003596 长盛盛腾混合A 混合型 100 100 100 100 100.0 diff --git a/util/MyLogger.py b/util/MyLogger.py index 423aaba..c41a90b 100644 --- a/util/MyLogger.py +++ b/util/MyLogger.py @@ -1,88 +1,88 @@ -# -*- coding: utf-8 -*- -#!/usr/bin/env python - -__author__ = 'cbb' - -import sys -reload(sys) -sys.setdefaultencoding("utf-8") - -import logging -import logging.handlers -import ConfigParser -from codeConvert import * - -#用字典保存日志级别 -format_dict = { - 1 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(filename)s - %(funcName)s() - line:%(lineno)d - %(message)s'), #error - 2 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(filename)s - %(message)s'), # debug - 3 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'), #info - 4 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'), - 5 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') -} - - -#日志系统, 既把日志输出到控制台, 还要写入日志文件 -class Logger(): - def __init__(self, logname='', loglevel=1, logger='logger'): - ''' - 指定保存日志的文件路径,日志级别,以及调用文件 - 将日志存入到指定的文件中 - ''' - - # 创建一个logger - self.logger = logging.getLogger(logger) - self.logger.setLevel(logging.DEBUG) - - if len(logname) == 0: - cf = ConfigParser.ConfigParser() - cf.read('./config.ini') - logname = cf.get('log','info_log_name') - - - #hdlr=logging.basicConfig(logname,level=logging.NOTSET,format='%(asctime)s %(levelname)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S') - - # 创建一个handler,用于写入日志文件 - #fh = logging.handlers.TimedRotatingFileHandler(logname, 'D') - #fh.suffix = "%Y%m%d.log" - # fh = logging.FileHandler(logname) - # fh.setLevel(logging.DEBUG) - - # 再创建一个handler,用于输出到控制台 - ch = logging.StreamHandler() - ch.setLevel(logging.DEBUG) - - # 定义handler的输出格式 - #formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') - formatter = format_dict[int(loglevel)] - # fh.setFormatter(formatter) - ch.setFormatter(formatter) - - # 给logger添加handler - # self.logger.addHandler(fh) - self.logger.addHandler(ch) - - - def getlog(self): - return self.logger - - #自定义 - def addLog(self, msg, level='info'): - if level == 'info': - self.logger.info(encode_wrap(msg)) - elif level == 'debug': - self.logger.debug(encode_wrap(msg)) - elif level == 'error': - self.logger.error(encode_wrap(msg)) - - -#ErrorLogger = Logger(logname='./data/log/error.log', logger='error') -#InfoLogger = Logger(logname='./data/log/info.log', logger='info') - -if __name__ == "__main__": - - - - logger = Logger() - logger.addLog('百度') - +# -*- coding: utf-8 -*- +#!/usr/bin/env python + +__author__ = 'cbb' + +import sys +reload(sys) +sys.setdefaultencoding("utf-8") + +import logging +import logging.handlers +import ConfigParser +from codeConvert import * + +#用字典保存日志级别 +format_dict = { + 1 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(filename)s - %(funcName)s() - line:%(lineno)d - %(message)s'), #error + 2 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(filename)s - %(message)s'), # debug + 3 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'), #info + 4 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s'), + 5 : logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') +} + + +#日志系统, 既把日志输出到控制台, 还要写入日志文件 +class Logger(): + def __init__(self, logname='', loglevel=1, logger='logger'): + ''' + 指定保存日志的文件路径,日志级别,以及调用文件 + 将日志存入到指定的文件中 + ''' + + # 创建一个logger + self.logger = logging.getLogger(logger) + self.logger.setLevel(logging.DEBUG) + + if len(logname) == 0: + cf = ConfigParser.ConfigParser() + cf.read('./config.ini') + logname = cf.get('log','info_log_name') + + + #hdlr=logging.basicConfig(logname,level=logging.NOTSET,format='%(asctime)s %(levelname)s: %(message)s', datefmt='%Y-%m-%d %H:%M:%S') + + # 创建一个handler,用于写入日志文件 + #fh = logging.handlers.TimedRotatingFileHandler(logname, 'D') + #fh.suffix = "%Y%m%d.log" + # fh = logging.FileHandler(logname) + # fh.setLevel(logging.DEBUG) + + # 再创建一个handler,用于输出到控制台 + ch = logging.StreamHandler() + ch.setLevel(logging.DEBUG) + + # 定义handler的输出格式 + #formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s') + formatter = format_dict[int(loglevel)] + # fh.setFormatter(formatter) + ch.setFormatter(formatter) + + # 给logger添加handler + # self.logger.addHandler(fh) + self.logger.addHandler(ch) + + + def getlog(self): + return self.logger + + #自定义 + def addLog(self, msg, level='info'): + if level == 'info': + self.logger.info(encode_wrap(msg)) + elif level == 'debug': + self.logger.debug(encode_wrap(msg)) + elif level == 'error': + self.logger.error(encode_wrap(msg)) + + +#ErrorLogger = Logger(logname='./data/log/error.log', logger='error') +#InfoLogger = Logger(logname='./data/log/info.log', logger='info') + +if __name__ == "__main__": + + + + logger = Logger() + logger.addLog('百度') + diff --git a/util/MyLogger.pyc b/util/MyLogger.pyc new file mode 100644 index 0000000..883dab0 Binary files /dev/null and b/util/MyLogger.pyc differ diff --git a/util/__init__.py b/util/__init__.py index 1e72a8b..4f0848b 100644 --- a/util/__init__.py +++ b/util/__init__.py @@ -1,2 +1,2 @@ -from util.stockutil import getSixDigitalStockCode +from util.stockutil import getSixDigitalStockCode from util.commons import * \ No newline at end of file diff --git a/util/__init__.pyc b/util/__init__.pyc new file mode 100644 index 0000000..3fe90ff Binary files /dev/null and b/util/__init__.pyc differ diff --git a/util/codeConvert.py b/util/codeConvert.py index 6d77642..94b5383 100644 --- a/util/codeConvert.py +++ b/util/codeConvert.py @@ -1,63 +1,63 @@ -# -*- coding: utf8 -*- - -import sys, time -import datetime - -#console stdout -def encode_wrap(str): - try: - sse = sys.stdout.encoding - return str.encode(sse) - except Exception, e: - return str - -def str_qt_to_utf(qt_str): - utf_str = unicode(qt_str.toUtf8(), 'utf-8', 'ignore') - return utf_str - -def str_to_datatime(str_time, format='%Y-%m-%d %H:%M:%S'): - d = datetime.datetime.strptime(str_time, format) - return d - -def GetDate(timefrom1970): - return time.strftime("%Y-%m-%d",time.localtime(timefrom1970)) - -def GetTime(timefrom1970): - return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(timefrom1970)) - -def GetNowTime(): - return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())) - -def GetNowTime2(): - return time.strftime("%Y-%m-%d 00:00:00",time.localtime(time.time())) - -def GetNowTim3(): - return time.strftime("%Y-%m-%d-%H-%M-%S",time.localtime(time.time())) - -def GetNowDate(): - return time.strftime("%Y-%m-%d",time.localtime(time.time())) - -# 规整化发表时间 -def regularization_time(publish_time): - now = GetNowDate() - if '分钟前' in publish_time: # 22分钟前 - publish_time = publish_time.replace('分钟前','') - publish_time = time.time() - int(publish_time)*60 - publish_time = time.strftime("%Y-%m-%d %H:%M",time.localtime(publish_time)) - publish_time = publish_time + ':00' - - elif '今天' in publish_time: - publish_time = publish_time.replace('今天', now) + ':00' - - elif '月' in publish_time: - publish_time = publish_time.replace('月','-').replace('日','') - publish_time = time.strftime("%Y-",time.localtime(time.time())) + publish_time + ':00' - elif len(publish_time) == 5: # 形如14:58 - publish_time = now + " " + publish_time + ":00" - elif len(publish_time) == 11: #形如09-29 12:38 - publish_time = time.strftime("%Y-",time.localtime(time.time())) + publish_time + ':00' - elif len(publish_time) == 16: #形如2015-09-29 12:38 - publish_time = publish_time + ':00' - - +# -*- coding: utf8 -*- + +import sys, time +import datetime + +#console stdout +def encode_wrap(str): + try: + sse = sys.stdout.encoding + return str.encode(sse) + except Exception, e: + return str + +def str_qt_to_utf(qt_str): + utf_str = unicode(qt_str.toUtf8(), 'utf-8', 'ignore') + return utf_str + +def str_to_datatime(str_time, format='%Y-%m-%d %H:%M:%S'): + d = datetime.datetime.strptime(str_time, format) + return d + +def GetDate(timefrom1970): + return time.strftime("%Y-%m-%d",time.localtime(timefrom1970)) + +def GetTime(timefrom1970): + return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(timefrom1970)) + +def GetNowTime(): + return time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(time.time())) + +def GetNowTime2(): + return time.strftime("%Y-%m-%d 00:00:00",time.localtime(time.time())) + +def GetNowTim3(): + return time.strftime("%Y-%m-%d-%H-%M-%S",time.localtime(time.time())) + +def GetNowDate(): + return time.strftime("%Y-%m-%d",time.localtime(time.time())) + +# 规整化发表时间 +def regularization_time(publish_time): + now = GetNowDate() + if '分钟前' in publish_time: # 22分钟前 + publish_time = publish_time.replace('分钟前','') + publish_time = time.time() - int(publish_time)*60 + publish_time = time.strftime("%Y-%m-%d %H:%M",time.localtime(publish_time)) + publish_time = publish_time + ':00' + + elif '今天' in publish_time: + publish_time = publish_time.replace('今天', now) + ':00' + + elif '月' in publish_time: + publish_time = publish_time.replace('月','-').replace('日','') + publish_time = time.strftime("%Y-",time.localtime(time.time())) + publish_time + ':00' + elif len(publish_time) == 5: # 形如14:58 + publish_time = now + " " + publish_time + ":00" + elif len(publish_time) == 11: #形如09-29 12:38 + publish_time = time.strftime("%Y-",time.localtime(time.time())) + publish_time + ':00' + elif len(publish_time) == 16: #形如2015-09-29 12:38 + publish_time = publish_time + ':00' + + return publish_time \ No newline at end of file diff --git a/util/codeConvert.pyc b/util/codeConvert.pyc new file mode 100644 index 0000000..43e4ead Binary files /dev/null and b/util/codeConvert.pyc differ diff --git a/util/commons.py b/util/commons.py index 7f5ed91..c153ced 100644 --- a/util/commons.py +++ b/util/commons.py @@ -1,37 +1,37 @@ -#!/usr/local/bin/python -#coding=utf-8 -# 定义的常量 - -import os - -################################## -# Redis - -#基本信息表 -PRE_STOCK_BASIC = 'stock_basic_info:' #股票基本信息的前缀 -KEY_CODE = 'code' -KEY_NAME = 'name' -KEY_INDUSTRY = 'industry' -KEY_AREA = 'area' -KEY_PE = 'pe' #市盈率 -KEY_EPS = 'eps' #每股收益 -KEY_PB = 'pb' #市净率 -KEY_TimeToMarket = 'timeToMarket' - -#历史K线数据 -PRE_STOCK_KLINE = 'kline_' -#PRE_STOCK_KLINE_Sqlite = 'kline_' # sqlite 不支持 :,改成_ -KEY_DATE = 'date' -KEY_OPEN = 'open' -KEY_HIGH = 'high' -KEY_CLOSE = 'close' -KEY_LOW = 'low' -KEY_VOLUME = 'volume' -KEY_AMOUNT = 'amount' - -STOCK_BASIC_TABLE = 'stock_basic_all' # 索引:获取所有股票 -STOCK_KLINE_TABLE = 'stock_kline_fq' # 索引:获取单只股票的所有日期的K线(前复权,后复权) #stock_kline_all - - -################################## - +#!/usr/local/bin/python +#coding=utf-8 +# 定义的常量 + +import os + +################################## +# Redis + +#基本信息表 +PRE_STOCK_BASIC = 'stock_basic_info:' #股票基本信息的前缀 +KEY_CODE = 'code' +KEY_NAME = 'name' +KEY_INDUSTRY = 'industry' +KEY_AREA = 'area' +KEY_PE = 'pe' #市盈率 +KEY_EPS = 'eps' #每股收益 +KEY_PB = 'pb' #市净率 +KEY_TimeToMarket = 'timeToMarket' + +#历史K线数据 +PRE_STOCK_KLINE = 'kline_' +#PRE_STOCK_KLINE_Sqlite = 'kline_' # sqlite 不支持 :,改成_ +KEY_DATE = 'date' +KEY_OPEN = 'open' +KEY_HIGH = 'high' +KEY_CLOSE = 'close' +KEY_LOW = 'low' +KEY_VOLUME = 'volume' +KEY_AMOUNT = 'amount' + +STOCK_BASIC_TABLE = 'stock_basic_all' # 索引:获取所有股票 +STOCK_KLINE_TABLE = 'stock_kline_fq' # 索引:获取单只股票的所有日期的K线(前复权,后复权) #stock_kline_all + + +################################## + diff --git a/util/commons.pyc b/util/commons.pyc new file mode 100644 index 0000000..78cd4cd Binary files /dev/null and b/util/commons.pyc differ diff --git a/util/helper.py b/util/helper.py index 539d142..53a7a99 100644 --- a/util/helper.py +++ b/util/helper.py @@ -1,20 +1,20 @@ -#!/usr/local/bin/python -#coding=utf-8 - -__author__ = 'bbchen' - -import time -from functools import wraps - -# 统计函数耗时 -def fn_timer(function): - @wraps(function) - def function_timer(*args, **kwargs): - t0 = time.time() - result = function(*args, **kwargs) - t1 = time.time() - print ("Total time running %s: %s seconds" % - (function.func_name, str(t1-t0)) - ) - return result +#!/usr/local/bin/python +#coding=utf-8 + +__author__ = 'bbchen' + +import time +from functools import wraps + +# 统计函数耗时 +def fn_timer(function): + @wraps(function) + def function_timer(*args, **kwargs): + t0 = time.time() + result = function(*args, **kwargs) + t1 = time.time() + print ("Total time running %s: %s seconds" % + (function.func_name, str(t1-t0)) + ) + return result return function_timer \ No newline at end of file diff --git a/util/helper.pyc b/util/helper.pyc new file mode 100644 index 0000000..4ddc7ca Binary files /dev/null and b/util/helper.pyc differ diff --git a/util/send_mail.py b/util/send_mail.py index 21a6329..c31c266 100644 --- a/util/send_mail.py +++ b/util/send_mail.py @@ -1,49 +1,49 @@ -# -*- coding: utf8 -*- - -__author__ = 'Cbb' -from init import * - -def send_email_163(from_addr= 'cbbhust@163.com', - password = '12356789', - to_addrs = ('m18410182275@163.com'), - subject= 'Result', - content = None): - """This function use 163 email to send simple message.If success,return Ture,else return False - from_addr:should be 163 email adress - password:password of your email account - to_addrs:should be a tuple,like ('xxxxxx@163.com','xxxxxx@163.com') - subject:subject of your email - content:content of your email - """ - if content == None: - errorLogger.logger.error( 'content is None.') - return False - - try: - from smtplib import SMTP - from email.mime.text import MIMEText - - infoLogger.logger.info('begin send email...') - - email_client = SMTP(host = 'smtp.163.com') - email_client.login(from_addr, password) - - #create msg - msg = MIMEText(content, _charset='utf-8') - msg['Subject'] = subject - email_client.sendmail(from_addr, to_addrs, msg.as_string()) - - infoLogger.logger.info('send email success!') - return True - - except Exception, e: - errorLogger.logger.error(str(e)) - return False - finally: - email_client.quit() - -if __name__ == '__main__': - send_email_163(content='tttt') - - - +# -*- coding: utf8 -*- + +__author__ = 'Cbb' +from init import * + +def send_email_163(from_addr= 'cbbhust@163.com', + password = '12356789', + to_addrs = ('1627041882@qq.com'), + subject= 'Result', + content = None): + """This function use 163 email to send simple message.If success,return Ture,else return False + from_addr:should be 163 email adress + password:password of your email account + to_addrs:should be a tuple,like ('xxxxxx@163.com','xxxxxx@163.com') + subject:subject of your email + content:content of your email + """ + if content == None: + errorLogger.logger.error( 'content is None.') + return False + + try: + from smtplib import SMTP + from email.mime.text import MIMEText + + infoLogger.logger.info('begin send email...') + + email_client = SMTP(host = 'smtp.163.com') + email_client.login(from_addr, password) + + #create msg + msg = MIMEText(content, _charset='utf-8') + msg['Subject'] = subject + email_client.sendmail(from_addr, to_addrs, msg.as_string()) + + infoLogger.logger.info('send email success!') + return True + + except Exception, e: + errorLogger.logger.error(str(e)) + return False + finally: + email_client.quit() + +if __name__ == '__main__': + send_email_163(content='tttt') + + + diff --git a/util/send_mail.pyc b/util/send_mail.pyc new file mode 100644 index 0000000..8f8cff7 Binary files /dev/null and b/util/send_mail.pyc differ diff --git a/util/stockutil.py b/util/stockutil.py index 836e79f..44987c9 100644 --- a/util/stockutil.py +++ b/util/stockutil.py @@ -1,41 +1,41 @@ -#!/usr/local/bin/python -#coding=utf-8 -import time -from functools import wraps - -# 补全股票代码(6位股票代码) -# input: int or string -# output: string -def getSixDigitalStockCode(code): - strZero = '' - for _ in range(len(str(code)), 6): - strZero += '0' - return strZero + str(code) - -# 统计函数耗时 -def fn_timer(function): - @wraps(function) - def function_timer(*args, **kwargs): - t0 = time.time() - result = function(*args, **kwargs) - t1 = time.time() - print ("Total time running %s: %s seconds" % - (function.func_name, str(t1-t0)) - ) - return result - return function_timer - -# 将list分为多组 -# 例:>>> print group_list(range(10), 3) -# [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]] -def group_list(li,block): - size = len(li) -# group=[] -# for i in range(0,size,block): -# group.append(li[i:i+block]) -# return group - return [li[i:i+block] for i in range(0,size,block)] - - - - +#!/usr/local/bin/python +#coding=utf-8 +import time +from functools import wraps + +# 补全股票代码(6位股票代码) +# input: int or string +# output: string +def getSixDigitalStockCode(code): + strZero = '' + for _ in range(len(str(code)), 6): + strZero += '0' + return strZero + str(code) + +# 统计函数耗时 +def fn_timer(function): + @wraps(function) + def function_timer(*args, **kwargs): + t0 = time.time() + result = function(*args, **kwargs) + t1 = time.time() + print ("Total time running %s: %s seconds" % + (function.func_name, str(t1-t0)) + ) + return result + return function_timer + +# 将list分为多组 +# 例:>>> print group_list(range(10), 3) +# [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9]] +def group_list(li,block): + size = len(li) +# group=[] +# for i in range(0,size,block): +# group.append(li[i:i+block]) +# return group + return [li[i:i+block] for i in range(0,size,block)] + + + + diff --git a/util/stockutil.pyc b/util/stockutil.pyc new file mode 100644 index 0000000..4d402f1 Binary files /dev/null and b/util/stockutil.pyc differ diff --git "a/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" "b/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" new file mode 100644 index 0000000..55e6f2c --- /dev/null +++ "b/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\234.txt" @@ -0,0 +1,559 @@ +1 160222 国泰国证食品饮料行业指数分级 股票指数 100 100 5 15 4 44.8 +2 110022 易方达消费行业 股票型 100 100 19 9 2 46.0 +3 000248 汇添富中证主要消费ETF联接 联接基金 100 100 4 18 10 46.4 +4 260108 景顺长城新兴成长混合 混合型 100 100 10 11 17 47.6 +5 162605 景顺长城鼎益混合(LOF) 混合型 100 100 12 13 13 47.6 +6 161725 招商中证白酒指数分级 股票指数 77 100 56 5 1 47.8 +7 000619 东方红产业升级混合 混合型 100 100 23 19 11 50.6 +8 000083 汇添富消费行业混合 混合型 100 100 11 14 30 51.0 +9 260116 景顺长城核心竞争力混合A 混合型 100 100 20 22 24 53.2 +10 001740 光大中国制造2025混合 混合型 100 100 42 8 23 54.6 +11 070032 嘉实优化红利混合 混合型 100 100 13 10 51 54.8 +12 001112 东方红中国优势混合 混合型 100 100 43 20 14 55.4 +13 000462 农银主题轮动混合 混合型 100 100 3 25 52 56.0 +14 260110 景顺长城精选蓝筹混合 混合型 100 100 25 34 32 58.2 +15 001606 农银工业4.0混合 混合型 100 100 21 27 49 59.4 +16 002863 金信深圳成长混合发起式 混合型 1 1 100 100 100 60.4 +17 001208 诺安低碳经济股票 股票型 100 100 15 60 28 60.6 +18 519066 汇添富蓝筹稳健 混合型 100 100 44 17 42 60.6 +19 164908 交银中证环境治理(LOF) 股票指数 2 2 100 100 100 60.8 +20 110003 易方达上证50指数A 股票指数 100 100 32 51 21 60.8 +21 001387 中融新经济混合A 混合型 100 100 100 1 3 60.8 +22 501030 汇添富中证环境治理指数A 股票指数 3 4 100 100 100 61.4 +23 501031 汇添富中证环境治理指数C 股票指数 4 3 100 100 100 61.4 +24 001822 华商智能生活灵活配置混合 混合型 5 5 100 100 100 62.0 +25 550016 信诚至远C 分级杠杆 100 100 1 36 74 62.2 +26 519664 银河美丽混合A 混合型 100 100 18 33 60 62.2 +27 519068 汇添富成长焦点混合 混合型 100 100 46 21 44 62.2 +28 001542 国泰互联网+股票 股票型 100 100 100 7 5 62.4 +29 000800 华商未来主题混合 混合型 7 6 100 100 100 62.6 +30 630011 华商主题精选混合 混合型 10 8 100 100 100 63.6 +31 000654 华商新锐产业混合 混合型 12 9 100 100 100 64.2 +32 000742 国泰新经济灵活配置混合 混合型 100 100 100 16 7 64.6 +33 001076 易方达改革红利混合 混合型 100 100 14 40 70 64.8 +34 630005 华商动态阿尔法 混合型 13 12 100 100 100 65.0 +35 001170 泰达宏利复兴混合 混合型 100 100 26 39 61 65.2 +36 519665 银河美丽混合C 混合型 100 100 22 38 67 65.4 +37 481012 工银深证红利联接 联接基金 100 100 58 35 36 65.8 +38 160632 鹏华酒分级 股票指数 70 100 100 55 8 66.6 +39 001679 前海开源中国稀缺资产混合A 混合型 20 14 100 100 100 66.8 +40 519772 交银新生活力灵活配置混合 混合型 100 100 2 43 89 66.8 +41 001071 华安媒体互联网混合 混合型 9 27 100 100 100 67.2 +42 180012 银华富裕主题混合 混合型 100 100 100 30 6 67.2 +43 002079 前海开源中国稀缺资产混合C 混合型 21 16 100 100 100 67.4 +44 660010 农银策略精选混合 混合型 100 100 41 67 29 67.4 +45 165523 信诚中证信息安全指数分级 股票指数 8 30 100 100 100 67.6 +46 000690 前海开源大海洋混合 混合型 18 20 100 100 100 67.6 +47 040008 华安策略优选混合 混合型 100 100 100 12 26 67.6 +48 001287 安信优势增长混合A 混合型 100 100 8 58 73 67.8 +49 001281 长安鑫利优选混合A 混合型 100 100 51 26 62 67.8 +50 165312 建信央视50 股票指数 100 100 100 24 19 68.6 +51 169101 东方红睿丰混合 混合型 100 100 100 31 12 68.6 +52 519908 华夏兴华混合A 混合型 15 29 100 100 100 68.8 +53 002983 长信国防军工量化混合 混合型 19 25 100 100 100 68.8 +54 540012 汇丰晋信恒生龙头指数A 股票指数 100 100 82 47 15 68.8 +55 160643 鹏华中证空天一体(LOF) none 24 21 100 100 100 69.0 +56 002072 长安鑫利优选混合C 混合型 100 100 54 28 64 69.2 +57 001179 德邦大健康灵活配置混合 混合型 100 100 52 54 46 70.4 +58 160630 鹏华国防 股票指数 34 22 100 100 100 71.2 +59 519690 交银稳健配置混合A 混合型 100 100 73 23 63 71.8 +60 310388 申万菱信消费增长混合 混合型 100 100 64 29 68 72.2 +61 164304 新华中证环保产业指数分级 股票指数 26 37 100 100 100 72.6 +62 001712 东方红优势精选混合 混合型 100 100 84 45 35 72.8 +63 000173 汇添富美丽30混合 混合型 100 100 17 75 76 73.6 +64 161024 富国中证军工指数分级 股票指数 27 42 100 100 100 73.8 +65 001266 国投瑞银招财混合 保本型 53 17 100 100 100 74.0 +66 004347 南方中证500信息技术联接C 联接基金 40 32 100 100 100 74.4 +67 002984 广发环保指数C 股票指数 29 44 100 100 100 74.6 +68 005035 银华信息科技量化股票发起式A none 35 39 100 100 100 74.8 +69 001044 嘉实新消费股票 股票型 100 100 100 37 37 74.8 +70 165524 信诚中证智能家居指数分级 股票指数 32 43 100 100 100 75.0 +71 001064 广发环保指数A 股票指数 30 46 100 100 100 75.2 +72 002900 南方中证500信息技术联接A 联接基金 42 34 100 100 100 75.2 +73 005036 银华信息科技量化股票发起式C none 36 41 100 100 100 75.4 +74 110011 易方达中小盘混合 混合型 100 100 100 61 16 75.4 +75 217027 招商央视财经50指数A 股票指数 100 100 100 57 22 75.8 +76 163114 申万中证环保产业指数分级 股票指数 31 49 100 100 100 76.0 +77 241001 华宝海外中国成长混合 QDII 100 100 100 49 31 76.0 +78 002236 大成360互联网+大数据100A 股票指数 6 75 100 100 100 76.2 +79 161031 富国中证工业4.0指数分级 股票指数 28 53 100 100 100 76.2 +80 260103 景顺长城动力平衡 混合型 100 100 77 66 38 76.2 +81 004224 南方军工改革灵活配置混合 混合型 17 67 100 100 100 76.8 +82 001838 国投瑞银国家安全混合 混合型 71 13 100 100 100 76.8 +83 519746 交银丰享收益债券A 债券型 100 100 100 2 82 76.8 +84 001591 天弘中证环保产业C 股票指数 37 48 100 100 100 77.0 +85 002853 华富元鑫灵活配置混合A 混合型 100 100 100 3 83 77.2 +86 206007 鹏华消费优选混合 混合型 100 100 100 48 39 77.4 +87 160634 鹏华环保分级 股票指数 33 55 100 100 100 77.6 +88 001590 天弘中证环保产业A 股票指数 38 50 100 100 100 77.6 +89 004008 中融鑫思路混合A 混合型 100 100 100 4 84 77.6 +90 540009 汇丰晋信消费红利 股票型 100 100 100 64 25 77.8 +91 000423 前海开源事件驱动混合A 混合型 100 100 40 72 78 78.0 +92 004009 中融鑫思路混合C 混合型 100 100 100 6 85 78.2 +93 001865 前海开源事件驱动混合C 混合型 100 100 39 73 80 78.4 +94 360007 光大保德信优势配置混合 混合型 100 100 71 68 54 78.6 +95 001475 易方达国防军工混合 混合型 72 23 100 100 100 79.0 +96 257070 国联安优选行业混合 混合型 76 19 100 100 100 79.0 +97 005117 金信价值精选灵活配置混合A none 63 33 100 100 100 79.2 +98 210004 金鹰稳健成长混合 混合型 23 74 100 100 100 79.4 +99 002199 前海开源中证军工指数C 股票指数 46 52 100 100 100 79.6 +100 005118 金信价值精选灵活配置混合C none 62 36 100 100 100 79.6 +101 164906 交银中证海外中国互联网指数 QDII-指数 100 100 100 59 41 80.0 +102 519606 国泰金鑫 股票型 100 100 100 80 20 80.0 +103 161628 融通军工分级 股票指数 39 62 100 100 100 80.2 +104 502003 易方达军工分级 股票指数 43 60 100 100 100 80.6 +105 310398 申万菱信沪深300价值指数 股票指数 100 100 100 70 33 80.6 +106 164819 工银中证环保产业指数分级 股票指数 55 51 100 100 100 81.2 +107 001899 东海社会安全 股票指数 59 47 100 100 100 81.2 +108 001725 汇添富高端制造股票 股票型 100 100 6 100 100 81.2 +109 000596 前海开源中证军工指数A 股票指数 50 57 100 100 100 81.4 +110 003119 博时鑫源混合A 混合型 100 100 7 100 100 81.4 +111 163115 申万菱信中证军工指数分级 股票指数 49 59 100 100 100 81.6 +112 000061 华夏盛世混合 混合型 90 18 100 100 100 81.6 +113 003120 博时鑫源混合C 混合型 100 100 9 100 100 81.8 +114 001583 安信新常态股票 股票型 100 100 100 44 65 81.8 +115 110015 易方达行业领先混合 混合型 100 100 100 56 53 81.8 +116 160127 南方新兴消费分级 股票型 100 100 100 100 9 81.8 +117 004314 前海开源沪港深新硬件A 混合型 100 10 100 100 100 82.0 +118 000854 鹏华养老产业 股票型 100 100 90 62 58 82.0 +119 004315 前海开源沪港深新硬件C 混合型 100 11 100 100 100 82.2 +120 000835 华润元大富时中国A50指数 股票指数 100 100 93 78 40 82.2 +121 530015 建信深证60联接 联接基金 100 100 100 63 48 82.2 +122 519671 银河沪深300价值 股票指数 100 100 100 77 34 82.2 +123 020026 国泰成长优选混合 混合型 100 100 100 97 18 83.0 +124 002624 广发优企精选混合 混合型 100 100 16 100 100 83.2 +125 002851 南方品质混合 混合型 100 100 70 53 93 83.2 +126 003243 上投摩根中国世纪人民币 QDII 100 100 72 52 92 83.2 +127 161631 融通人工智能指数(LOF) 股票指数 48 69 100 100 100 83.4 +128 001703 银华沪港深增长股票 股票型 100 100 100 32 86 83.6 +129 020023 国泰事件驱动策略混合 混合型 100 100 100 94 27 84.2 +130 398061 中海消费混合 混合型 100 100 76 74 72 84.4 +131 501002 长信中证能源互联指数(LOF) 股票指数 78 45 100 100 100 84.6 +132 161033 富国中证智能汽车(LOF) 股票指数 100 24 100 100 100 84.8 +133 004528 长盛盛通纯债A none 100 100 24 100 100 84.8 +134 162107 金鹰量化精选股票(LOF) 股票型 14 111 100 100 100 85.0 +135 620004 金元顺安价值增长混合 混合型 22 103 100 100 100 85.0 +136 163117 申万菱信申万传媒分级 股票指数 25 100 100 100 100 85.0 +137 164508 国富中证100指数增强分级 股票指数 100 100 89 86 50 85.0 +138 000696 汇添富环保行业股票 股票型 68 58 100 100 100 85.2 +139 000698 宝盈科技30混合 混合型 111 15 100 100 100 85.2 +140 000751 嘉实新兴产业股票 股票型 100 100 100 71 55 85.2 +141 164402 前海开源中航军工 股票指数 56 71 100 100 100 85.4 +142 163412 兴全轻资产混合(LOF) 混合型 100 100 27 100 100 85.4 +143 002482 宝盈互联网沪港深混合 混合型 100 28 100 100 100 85.6 +144 519642 银河智造混合 混合型 100 100 28 100 100 85.6 +145 002121 广发沪港深新起点股票 股票型 100 100 100 41 87 85.6 +146 501019 国泰国证航天军工指数 股票指数 51 78 100 100 100 85.8 +147 398041 中海量化策略混合 混合型 65 64 100 100 100 85.8 +148 002251 华夏军工安全混合 混合型 89 40 100 100 100 85.8 +149 160628 鹏华地产分级 股票指数 100 100 29 100 100 85.8 +150 519008 汇添富优势精选 混合型 100 100 30 100 100 86.0 +151 002666 前海开源沪港深创新成长混合A 混合型 100 100 100 42 88 86.0 +152 320010 诺安中证100 股票指数 100 100 100 83 47 86.0 +153 004374 华泰保兴吉年丰混合发起A 混合型 100 100 31 100 100 86.2 +154 570001 诺德价值优势混合 混合型 100 100 100 76 56 86.4 +155 001605 国富沪港深成长精选股票 股票型 100 100 33 100 100 86.6 +156 167301 方正富邦保险主题指数分级 股票指数 100 100 100 90 43 86.6 +157 001528 诺安先进制造股票 股票型 100 100 34 100 100 86.8 +158 004375 华泰保兴吉年丰混合发起C 混合型 100 100 35 100 100 87.0 +159 161030 富国中证体育产业指数分级 股票指数 11 125 100 100 100 87.2 +160 002124 广发新兴产业混合 混合型 100 100 36 100 100 87.2 +161 350005 天治中国制造2025 混合型 100 100 75 84 77 87.2 +162 002667 前海开源沪港深创新成长混合C 混合型 100 100 100 46 90 87.2 +163 163411 兴全精选混合 保本型 100 100 37 100 100 87.4 +164 320017 诺安全球不动产 QDII 100 38 100 100 100 87.6 +165 481001 工银核心价值混合A 混合型 100 100 38 100 100 87.6 +166 001878 嘉实沪港深精选股票 股票型 100 100 100 50 91 88.2 +167 002189 农银汇理国企改革混合 混合型 100 100 55 89 98 88.4 +168 001371 富国沪港深价值混合 混合型 100 100 100 98 45 88.6 +169 519056 海富通内需热点混合 混合型 100 100 45 100 100 89.0 +170 161224 国投瑞银新丝路混合(LOF) 混合型 47 100 100 100 100 89.4 +171 001163 银华中国梦30股票 股票型 100 100 47 100 100 89.4 +172 001892 长盛新兴成长混合 混合型 100 100 48 100 100 89.6 +173 376510 上投大盘蓝筹 股票型 100 100 100 79 69 89.6 +174 001657 长安鑫富领先混合 混合型 100 100 49 100 100 89.8 +175 166006 中欧行业成长混合(LOF)A 混合型 100 100 100 92 57 89.8 +176 000127 农银行业领先混合 混合型 100 100 50 100 100 90.0 +177 519961 长信利广混合A 混合型 125 26 100 100 100 90.2 +178 310358 申万菱信新经济混合 混合型 100 100 100 85 66 90.2 +179 002230 华夏大中华混合(QDII) QDII 97 56 100 100 100 90.6 +180 001209 前海开源一带一路混合A 混合型 122 31 100 100 100 90.6 +181 002085 长盛互联网+混合 混合型 100 100 53 100 100 90.6 +182 002974 广发信息技术联接C 联接基金 44 110 100 100 100 90.8 +183 540008 汇丰晋信低碳先锋 股票型 100 54 100 100 100 90.8 +184 000011 华夏大盘精选 混合型 100 100 100 96 59 91.0 +185 000942 广发信息技术联接A 联接基金 45 112 100 100 100 91.4 +186 000634 富国天盛灵活配置混合 混合型 100 100 57 100 100 91.4 +187 160422 华安中证定向增发 股票指数 58 100 100 100 100 91.6 +188 002080 前海开源一带一路混合C 混合型 123 35 100 100 100 91.6 +189 004505 博时新兴消费主题混合 混合型 100 100 59 100 100 91.8 +190 001236 博时丝路主题股票A 股票型 100 100 60 100 100 92.0 +191 000179 广发美国房地产指数 QDII-指数 100 61 100 100 100 92.2 +192 000029 富国宏观策略 混合型 100 100 61 100 100 92.2 +193 519732 交银定期支付双息平衡混合 混合型 100 100 62 100 100 92.4 +194 001681 新华积极价值灵活配置混合 混合型 100 100 63 100 100 92.6 +195 001668 汇添富全球互联混合 QDII 100 100 100 69 94 92.6 +196 162203 泰达宏利稳定混合 混合型 100 100 100 88 75 92.6 +197 501005 汇添富中证精准医疗指数A 股票指数 16 148 100 100 100 92.8 +198 001790 国泰智能汽车股票 none 100 65 100 100 100 93.0 +199 100022 富国天瑞强势 混合型 100 100 65 100 100 93.0 +200 004357 南方智慧混合 混合型 100 100 66 100 100 93.2 +201 003017 广发中证军工ETF联接 联接基金 84 83 100 100 100 93.4 +202 519035 富国天博创新主题混合 混合型 100 100 67 100 100 93.4 +203 160141 南方道琼斯美国精选C none 100 68 100 100 100 93.6 +204 004897 长安鑫恒回报混合A none 100 100 68 100 100 93.6 +205 161726 招商国证生物医药指数分级 股票指数 41 128 100 100 100 93.8 +206 501010 汇添富中证生物科技指数C 股票指数 52 117 100 100 100 93.8 +207 501009 汇添富中证生物科技指数A 股票指数 54 115 100 100 100 93.8 +208 519170 浦银安盛增长动力混合 混合型 73 96 100 100 100 93.8 +209 164905 交银国证新能源指数分级 股票指数 106 63 100 100 100 93.8 +210 004183 富国产业升级混合 none 100 100 69 100 100 93.8 +211 160140 南方道琼斯美国精选A none 100 70 100 100 100 94.0 +212 000020 景顺长城品质投资混合 混合型 100 100 100 99 71 94.0 +213 000167 广发聚优灵活配置混合A 混合型 100 100 100 91 81 94.4 +214 004748 天弘策略精选混合C none 66 107 100 100 100 94.6 +215 004898 长安鑫恒回报混合C none 100 100 74 100 100 94.8 +216 004694 天弘策略精选混合A none 67 109 100 100 100 95.2 +217 002345 华夏高端制造混合 混合型 100 76 100 100 100 95.2 +218 003597 长盛盛腾混合C 混合型 100 100 100 81 95 95.2 +219 000535 长盛航天海工装备灵活配置 混合型 100 77 100 100 100 95.4 +220 002595 博时工业4.0主题股票 股票型 100 100 78 100 100 95.6 +221 001659 富安达新动力混合 混合型 100 100 100 82 96 95.6 +222 001723 华商新动力灵活配置混合 混合型 79 100 100 100 100 95.8 +223 161028 富国中证新能源汽车指数分级 股票指数 100 79 100 100 100 95.8 +224 450004 国富深化价值混合 混合型 100 100 79 100 100 95.8 +225 003154 华宝新活力混合 混合型 100 100 80 100 100 96.0 +226 160605 鹏华中国50 混合型 81 100 100 100 100 96.2 +227 003670 中融物联网主题灵活配置混合 混合型 100 81 100 100 100 96.2 +228 001714 工银文体产业股票 股票型 100 100 81 100 100 96.2 +229 004698 博时军工主题股票 none 100 82 100 100 100 96.4 +230 519702 交银趋势混合 混合型 100 100 83 100 100 96.6 +231 002980 华夏创新前沿股票 股票型 100 84 100 100 100 96.8 +232 002989 融通通乾研究精选混合 混合型 100 100 100 87 97 96.8 +233 001915 宝盈医疗健康沪港深股票 股票型 98 87 100 100 100 97.0 +234 000541 华商创新成长灵活配置 混合型 100 85 100 100 100 97.0 +235 001651 工银新蓝筹股票 股票型 100 100 85 100 100 97.0 +236 001457 华商新常态混合 混合型 100 86 100 100 100 97.2 +237 001518 万家瑞兴 混合型 100 100 86 100 100 97.2 +238 161122 易方达生物分级 股票指数 64 123 100 100 100 97.4 +239 001040 新华策略精选股票 股票型 100 100 87 100 100 97.4 +240 004477 嘉实沪港深回报混合 混合型 100 100 88 100 100 97.6 +241 005496 创金合信科技成长股票C none 100 90 100 100 100 98.0 +242 005495 创金合信科技成长股票A none 100 91 100 100 100 98.2 +243 160216 国泰商品 QDII 100 100 91 100 100 98.2 +244 164907 交银中证互联网金融指数分级 股票指数 92 100 100 100 100 98.4 +245 160225 国泰国证新能源汽车指数 股票指数 100 92 100 100 100 98.4 +246 519087 新华优选分红混合 混合型 100 100 92 100 100 98.4 +247 002214 中海沪港深价值优选混合 混合型 100 100 100 93 99 98.4 +248 501008 汇添富中证互联网医疗指数C 股票指数 93 100 100 100 100 98.6 +249 501007 汇添富中证互联网医疗指数A 股票指数 94 100 100 100 100 98.8 +250 160607 鹏华价值优势混合(LOF) 混合型 100 100 94 100 100 98.8 +251 161123 易方达重组分级 股票指数 95 100 100 100 100 99.0 +252 206002 鹏华精选成长混合 混合型 100 100 95 100 100 99.0 +253 003596 长盛盛腾混合A 混合型 100 100 100 95 100 99.0 +254 161232 国投瑞银瑞盛混合(LOF) 混合型 108 88 100 100 100 99.2 +255 100020 富国天益价值混合 混合型 100 100 96 100 100 99.2 +256 001986 前海开源人工智能主题混合 混合型 100 97 100 100 100 99.4 +257 001581 华安沪港深通精选灵活配置混合 混合型 100 100 97 100 100 99.4 +258 002142 博时外延增长主题灵活配置混合 混合型 100 100 98 100 100 99.6 +259 001600 天弘中证高端装备制造C 股票指数 127 72 100 100 100 99.8 +260 003750 创金合信鑫收益混合C 混合型 100 100 99 100 100 99.8 +261 003145 中融竞争优势 股票型 100 100 100 100 100 100.0 +262 001186 富国文体健康股票 股票型 100 100 100 100 100 100.0 +263 001599 天弘中证高端装备制造A 股票指数 128 73 100 100 100 100.2 +264 630001 华商领先企业 混合型 105 100 100 100 100 101.0 +265 000603 易方达创新驱动灵活配置混合 混合型 100 105 100 100 100 101.0 +266 004397 长盛信息安全量化策略混合 混合型 100 106 100 100 100 101.2 +267 161609 融通动力先锋混合 混合型 91 116 100 100 100 101.4 +268 000965 汇丰晋信新动力混合 混合型 100 108 100 100 100 101.6 +269 004752 广发中证传媒ETF联接A none 109 100 100 100 100 101.8 +270 502036 大成中证互联网金融指数分级 股票指数 110 100 100 100 100 102.0 +271 519110 浦银安盛价值成长混合A 混合型 86 127 100 100 100 102.6 +272 000220 富国医疗保健行业混合 混合型 100 113 100 100 100 102.6 +273 580005 东吴进取策略 混合型 100 114 100 100 100 102.8 +274 004753 广发中证传媒ETF联接C none 115 100 100 100 100 103.0 +275 165315 建信网金融分级 股票指数 118 100 100 100 100 103.6 +276 001730 兴银大健康 混合型 100 118 100 100 100 103.6 +277 260109 景顺长城内需贰号混合 混合型 74 145 100 100 100 103.8 +278 160629 鹏华传媒分级 股票指数 119 100 100 100 100 103.8 +279 070030 嘉实中创400联接 联接基金 87 134 100 100 100 104.2 +280 004394 华泰柏瑞量化创优混合 none 121 100 100 100 100 104.2 +281 673010 西部利得新动向混合 混合型 100 121 100 100 100 104.2 +282 001959 华商乐享互联灵活配置混合 混合型 100 122 100 100 100 104.4 +283 163415 兴全商业模式优选混合 混合型 124 100 100 100 100 104.8 +284 001037 国投瑞银锐意改革混合 混合型 100 124 100 100 100 104.8 +285 610005 信达澳银红利回报混合 混合型 82 144 100 100 100 105.2 +286 161037 富国中证高端制造指数增强型 股票指数 107 120 100 100 100 105.4 +287 210008 金鹰策略配置混合 混合型 57 172 100 100 100 105.8 +288 000778 鹏华先进制造股票 股票型 100 129 100 100 100 105.8 +289 005038 银华新能源新材料C none 100 130 100 100 100 106.0 +290 590008 中邮战略新兴产业混合 混合型 131 100 100 100 100 106.2 +291 005037 银华新能源新材料A none 100 132 100 100 100 106.4 +292 001322 东吴新趋势 混合型 226 7 100 100 100 106.6 +293 001279 中海积极增利混合 混合型 100 133 100 100 100 106.6 +294 001195 工银农业产业股票 股票型 136 100 100 100 100 107.2 +295 000788 前海开源中国成长混合 混合型 100 136 100 100 100 107.2 +296 003634 嘉实农业产业股票 股票型 137 100 100 100 100 107.4 +297 000586 景顺中小板创业板精选股票 股票型 100 138 100 100 100 107.6 +298 161910 万家中创指数分级 股票指数 100 139 100 100 100 107.8 +299 003769 中银品质生活混合 混合型 140 100 100 100 100 108.0 +300 004343 南方创业板ETF联接C 联接基金 141 100 100 100 100 108.2 +301 206011 鹏华美国房地产 QDII 100 141 100 100 100 108.2 +302 003975 中信建投睿泰灵活配置混合C 混合型 142 100 100 100 100 108.4 +303 002656 南方创业板ETF联接A 联接基金 143 100 100 100 100 108.6 +304 000534 长盛高端装备制造灵活配置 混合型 145 98 100 100 100 108.6 +305 002229 华夏经济转型股票 股票型 100 143 100 100 100 108.6 +306 003974 中信建投睿泰灵活配置混合A 混合型 144 100 100 100 100 108.8 +307 161223 国投瑞银中证创业指数分级 股票指数 100 146 100 100 100 109.2 +308 502056 广发医疗指数分级 股票指数 148 100 100 100 100 109.6 +309 160633 鹏华证券分级 股票指数 149 100 100 100 100 109.8 +310 540010 汇丰晋信科技先锋 股票型 100 149 100 100 100 109.8 +311 160637 鹏华创业板分级 股票指数 151 100 100 100 100 110.2 +312 000727 融通健康产业灵活配置混合 混合型 112 140 100 100 100 110.4 +313 161613 融通创业板指数增强 股票指数 152 100 100 100 100 110.4 +314 164818 工银中证传媒指数分级 股票指数 153 100 100 100 100 110.6 +315 004671 中融核心成长 none 100 153 100 100 100 110.6 +316 000062 银华量化智慧动力混合 混合型 154 100 100 100 100 110.8 +317 270028 广发制造业精选混合 混合型 100 156 100 100 100 111.2 +318 000279 华商红利优选灵活配置 混合型 75 182 100 100 100 111.4 +319 160419 华安中证全指证券公司指数分级 股票指数 157 100 100 100 100 111.4 +320 164401 前海开源健康分级 股票指数 101 157 100 100 100 111.6 +321 502010 易方达证券公司分级 股票指数 161 100 100 100 100 112.2 +322 519918 华夏兴和混合 混合型 100 161 100 100 100 112.2 +323 161720 招商中证全指证券公司指数分级 股票指数 162 100 100 100 100 112.4 +324 000969 前海开源大安全混合 混合型 100 162 100 100 100 112.4 +325 001809 中信建投智信物联网A 混合型 100 163 100 100 100 112.6 +326 110026 易方达创业板ETF联接A 联接基金 164 100 100 100 100 112.8 +327 161027 富国中证全指证券公司指数分级 股票指数 165 100 100 100 100 113.0 +328 163209 诺安中证创业成长指数分级 股票指数 100 166 100 100 100 113.2 +329 001166 建信环保产业股票 股票型 100 167 100 100 100 113.4 +330 002064 华富产业升级灵活配置混合 混合型 88 181 100 100 100 113.8 +331 164820 工银中证高铁产业指数分级 股票指数 134 135 100 100 100 113.8 +332 000574 宝盈新价值混合 混合型 169 100 100 100 100 113.8 +333 180031 银华中小盘混合 混合型 170 100 100 100 100 114.0 +334 162102 金鹰中小盘精选 混合型 100 170 100 100 100 114.0 +335 000598 长盛生态环境主题混合 混合型 100 171 100 100 100 114.2 +336 160224 国泰深证TMT50指数分级 股票指数 96 177 100 100 100 114.6 +337 162412 华宝中证医疗指数分级 股票指数 173 100 100 100 100 114.6 +338 000913 农银医疗保健股票 股票型 174 100 100 100 100 114.8 +339 163116 申万菱信申万电子分级 股票指数 185 89 100 100 100 114.8 +340 160626 鹏华信息分级 股票指数 85 190 100 100 100 115.0 +341 166019 中欧价值智选混合A 混合型 176 100 100 100 100 115.2 +342 502053 长盛中证证券公司分级 股票指数 177 100 100 100 100 115.4 +343 161629 融通证券分级 股票指数 178 100 100 100 100 115.6 +344 257020 国联安精选混合 混合型 100 178 100 100 100 115.6 +345 163113 申万菱信申万证券分级 股票指数 179 100 100 100 100 115.8 +346 001361 景顺中证TMT150ETF联接 联接基金 80 200 100 100 100 116.0 +347 000971 诺安新经济股票 股票型 180 100 100 100 100 116.0 +348 001294 新华战略新兴产业灵活配置混合 混合型 100 180 100 100 100 116.0 +349 001629 天弘中证计算机指数A 股票指数 60 221 100 100 100 116.2 +350 001630 天弘中证计算机指数C 股票指数 61 220 100 100 100 116.2 +351 260104 景顺长城内需增长混合 混合型 102 179 100 100 100 116.2 +352 001956 国联安科技动力 股票型 126 155 100 100 100 116.2 +353 004070 南方中证全指证券ETF联接C 联接基金 181 100 100 100 100 116.2 +354 165522 信诚中证TMT产业指数分级 股票指数 69 213 100 100 100 116.4 +355 004069 南方中证全指证券ETF联接A 联接基金 183 100 100 100 100 116.6 +356 501016 国泰中证申万证券行业指数 股票指数 184 100 100 100 100 116.8 +357 519029 华夏平稳增长 混合型 100 185 100 100 100 117.0 +358 005033 银华智能汽车量化股票发起式A none 100 186 100 100 100 117.2 +359 005207 南方高端装备灵活配置混合C none 186 101 100 100 100 117.4 +360 005266 博时厚泽回报混合C none 187 100 100 100 100 117.4 +361 000431 鹏华品牌传承混合 混合型 243 100 100 65 79 117.4 +362 005034 银华智能汽车量化股票发起式C none 100 187 100 100 100 117.4 +363 001877 宝盈国家安全沪港深股票 股票型 83 205 100 100 100 117.6 +364 002168 嘉实智能汽车股票 股票型 100 188 100 100 100 117.6 +365 005265 博时厚泽回报混合A none 189 100 100 100 100 117.8 +366 003765 广发创业板ETF联接A none 190 100 100 100 100 118.0 +367 003766 广发创业板ETF联接C none 191 100 100 100 100 118.2 +368 400015 东方增长中小盘混合 混合型 100 193 100 100 100 118.6 +369 000457 上投摩根核心成长 股票型 100 195 100 100 100 119.0 +370 001618 天弘中证电子指数C 股票指数 146 150 100 100 100 119.2 +371 160919 大成产业升级股票 股票型 100 196 100 100 100 119.2 +372 005310 广发电子信息传媒股票 none 100 197 100 100 100 119.4 +373 519097 新华中小市值优选混合 混合型 104 194 100 100 100 119.6 +374 420005 天弘周期策略混合 混合型 198 100 100 100 100 119.6 +375 001617 天弘中证电子指数A 股票指数 147 152 100 100 100 119.8 +376 202027 南方高端装备灵活配置混合A 混合型 195 104 100 100 100 119.8 +377 502030 中海中证高铁产业指数分级 股票指数 158 142 100 100 100 120.0 +378 161022 富国创业板指数分级 股票指数 200 100 100 100 100 120.0 +379 519095 新华行业周期轮换混合 混合型 175 126 100 100 100 120.2 +380 003647 创金合信中证1000指数增强C 股票指数 129 173 100 100 100 120.4 +381 004593 广发全指工业ETF联接 none 133 169 100 100 100 120.4 +382 001593 天弘创业板C 股票指数 202 100 100 100 100 120.4 +383 001321 兴业聚优灵活配置混合 混合型 100 202 100 100 100 120.4 +384 379010 上投摩根中小盘混合 混合型 100 203 100 100 100 120.6 +385 161810 银华内需精选混合(LOF) 混合型 100 204 100 100 100 120.8 +386 003646 创金合信中证1000指数增强A 股票指数 130 175 100 100 100 121.0 +387 001592 天弘创业板A 股票指数 205 100 100 100 100 121.0 +388 001983 中邮低碳配置混合 混合型 100 206 100 100 100 121.2 +389 166009 中欧新动力混合(LOF)A 混合型 100 207 100 100 100 121.4 +390 001210 天弘互联网混合 混合型 208 100 100 100 100 121.6 +391 001576 国泰智能装备股票 none 100 208 100 100 100 121.6 +392 160135 南方中证高铁产业指数分级 股票指数 150 160 100 100 100 122.0 +393 160223 国泰创业板指数(LOF) 股票指数 210 100 100 100 100 122.0 +394 470028 汇添富社会责任混合 混合型 100 210 100 100 100 122.0 +395 502026 鹏华新丝路分级 股票指数 211 100 100 100 100 122.2 +396 001795 上投摩根文体休闲灵活配置混合 混合型 100 211 100 100 100 122.2 +397 180013 银华领先策略混合 混合型 213 100 100 100 100 122.6 +398 002968 新华高端制造混合 none 100 214 100 100 100 122.8 +399 217019 招商深证TMT50ETF联接A 联接基金 132 183 100 100 100 123.0 +400 005235 银华食品饮料量化股票发起式A none 215 100 100 100 100 123.0 +401 000601 华宝创新优选混合 混合型 100 216 100 100 100 123.2 +402 160512 博时卓越品牌混合(LOF) 混合型 160 158 100 100 100 123.6 +403 001227 中邮信息产业灵活配置混合 混合型 218 100 100 100 100 123.6 +404 162607 景顺长城资源垄断混合 混合型 100 219 100 100 100 123.8 +405 005236 银华食品饮料量化股票发起式C none 220 100 100 100 100 124.0 +406 162411 华宝标普油气上游股票 QDII-指数 222 100 100 100 100 124.4 +407 001268 富国国家安全主题混合 混合型 223 100 100 100 100 124.6 +408 162216 泰达中证500分级 股票指数 225 100 100 100 100 125.0 +409 000031 华夏复兴混合 混合型 100 225 100 100 100 125.0 +410 163119 申万中证申万新兴健康产业指数 股票指数 103 223 100 100 100 125.2 +411 519704 交银先进制造混合 混合型 100 228 100 100 100 125.6 +412 161025 富国中证移动互联网指数分级 股票指数 193 137 100 100 100 126.0 +413 005239 银华文体娱乐量化股票发起式A none 230 100 100 100 100 126.0 +414 000063 长盛电子信息主题灵活配置混合 混合型 237 93 100 100 100 126.0 +415 110013 易方达科翔混合 混合型 100 231 100 100 100 126.2 +416 000219 博时裕益灵活配置 混合型 232 100 100 100 100 126.4 +417 002955 融通新趋势灵活配置混合 混合型 233 100 100 100 100 126.6 +418 519993 长信增利动态策略混合 混合型 234 99 100 100 100 126.6 +419 700001 平安大华行业先锋混合 混合型 235 100 100 100 100 127.0 +420 000925 汇添富外延增长主题 股票型 100 235 100 100 100 127.0 +421 160639 鹏华高铁分级 股票指数 172 164 100 100 100 127.2 +422 001349 富国改革动力混合 混合型 257 80 100 100 100 127.4 +423 519034 海富通中证内地低碳指数 股票指数 100 237 100 100 100 127.4 +424 004273 中融量化小盘股票C none 238 100 100 100 100 127.6 +425 001410 信达澳银新能源产业股票 股票型 100 238 100 100 100 127.6 +426 290005 泰信优势增长 混合型 166 174 100 100 100 128.0 +427 003096 中欧医疗健康混合C 混合型 240 100 100 100 100 128.0 +428 001193 中金消费升级 股票型 100 240 100 100 100 128.0 +429 121003 国投瑞银核心企业混合 混合型 239 102 100 100 100 128.2 +430 005240 银华文体娱乐量化股票发起式C none 241 100 100 100 100 128.2 +431 000522 华润元大信息传媒科技混合 混合型 100 241 100 100 100 128.2 +432 519026 海富通中小盘混合 混合型 100 244 100 100 100 128.8 +433 003095 中欧医疗健康混合A 混合型 245 100 100 100 100 129.0 +434 002250 红土创新改革红利混合 混合型 100 245 100 100 100 129.0 +435 003865 创金合信量化多因子股票C 股票型 113 233 100 100 100 129.2 +436 004272 中融量化小盘股票A none 246 100 100 100 100 129.2 +437 001458 广发中证全指主要消费联接A 联接基金 247 100 100 100 100 129.4 +438 001018 易方达新经济混合 混合型 100 247 100 100 100 129.4 +439 002976 广发中证全指主要消费联接C 联接基金 248 100 100 100 100 129.6 +440 001644 汇丰晋信智造先锋股票C 股票型 100 248 100 100 100 129.6 +441 001028 华安物联网主题股票 股票型 100 249 100 100 100 129.8 +442 001879 长城创新动力灵活配置混合 none 100 250 100 100 100 130.0 +443 004855 广发中证全指汽车指数C none 135 217 100 100 100 130.4 +444 001692 南方国策动力 股票型 100 252 100 100 100 130.4 +445 004854 广发中证全指汽车指数A none 138 215 100 100 100 130.6 +446 001643 汇丰晋信智造先锋股票A 股票型 100 253 100 100 100 130.6 +447 161825 银华中证800分级 股票指数 254 100 100 100 100 130.8 +448 420003 天弘永定价值成长混合 混合型 188 168 100 100 100 131.2 +449 001449 华商双驱优选混合 混合型 256 100 100 100 100 131.2 +450 001126 上投摩根卓越制造股票 股票型 100 256 100 100 100 131.2 +451 580001 东吴嘉禾优势精选 混合型 291 66 100 100 100 131.4 +452 003554 泰达宏利大数据混合C 混合型 258 100 100 100 100 131.6 +453 160640 鹏华新能源分级 股票指数 265 94 100 100 100 131.8 +454 002256 金信新能源汽车混合发起式 混合型 171 189 100 100 100 132.0 +455 002263 泰达宏利大数据混合A 混合型 260 100 100 100 100 132.0 +456 000684 长盛养老健康产业灵活配置 混合型 100 260 100 100 100 132.0 +457 002210 创金合信量化多因子股票A 股票型 120 242 100 100 100 132.4 +458 001735 广发百发大数据成长混合E 混合型 100 262 100 100 100 132.4 +459 410001 华富竞争力优选 混合型 263 100 100 100 100 132.6 +460 164821 工银中证新能源指数分级 股票指数 268 95 100 100 100 132.6 +461 519033 海富通国策导向混合 混合型 100 263 100 100 100 132.6 +462 502000 西部利得中证500等权重分级 股票指数 266 100 100 100 100 133.2 +463 163409 兴全绿色投资混合(LOF) 混合型 100 266 100 100 100 133.2 +464 000471 富国城镇发展股票 股票型 236 131 100 100 100 133.4 +465 160420 华安创业板50指数分级 股票指数 267 100 100 100 100 133.4 +466 001734 广发百发大数据成长混合A 混合型 100 268 100 100 100 133.6 +467 003956 南方教育股票 股票型 139 230 100 100 100 133.8 +468 000926 中信建投睿信灵活配置混合A 混合型 269 100 100 100 100 133.8 +469 580008 东吴新产业精选混合 混合型 100 269 100 100 100 133.8 +470 001733 泰达宏利量化股票 股票型 270 100 100 100 100 134.0 +471 161612 融通深证成份指数A 股票指数 271 100 100 100 100 134.2 +472 002564 新沃通盈灵活配置混合 混合型 253 119 100 100 100 134.4 +473 003101 诺德天禧债券 债券型 116 257 100 100 100 134.6 +474 004497 前海开源多元策略混合C 混合型 273 100 100 100 100 134.6 +475 162510 国联安双力中小板综指 股票指数 182 192 100 100 100 134.8 +476 004496 前海开源多元策略混合A 混合型 274 100 100 100 100 134.8 +477 004345 南方深证成份ETF联接C 联接基金 275 100 100 100 100 135.0 +478 004670 长盛分享经济主题灵活配置混合 none 100 275 100 100 100 135.0 +479 202017 南方深证成份ETF联接A 联接基金 276 100 100 100 100 135.2 +480 270008 广发核心精选混合 混合型 100 278 100 100 100 135.6 +481 005237 银华医疗健康量化优选A none 279 100 100 100 100 135.8 +482 004522 安信工业4.0灵活配置混合C none 156 224 100 100 100 136.0 +483 004905 华泰柏瑞生物医药混合 none 100 280 100 100 100 136.0 +484 160636 鹏华互联网分级 股票指数 227 154 100 100 100 136.2 +485 005238 银华医疗健康量化优选C none 281 100 100 100 100 136.2 +486 160106 南方高增长混合(LOF) 混合型 100 281 100 100 100 136.2 +487 160137 南方中证互联网指数分级 股票指数 282 100 100 100 100 136.4 +488 002076 浙商聚潮灵活配置 混合型 285 100 100 100 100 137.0 +489 003715 宝盈消费主题混合 混合型 100 285 100 100 100 137.0 +490 004065 中融量化多因子混合A 混合型 114 272 100 100 100 137.2 +491 004435 博时逆向投资混合C 混合型 286 100 100 100 100 137.2 +492 167001 平安大华鼎泰混合(LOF) 混合型 100 286 100 100 100 137.2 +493 000985 嘉实逆向策略股票 股票型 288 100 100 100 100 137.6 +494 001797 华融新利灵活配置混合 混合型 100 288 100 100 100 137.6 +495 004434 博时逆向投资混合A 混合型 289 100 100 100 100 137.8 +496 001042 华夏领先股票 股票型 100 289 100 100 100 137.8 +497 004785 中融量化多因子混合C none 117 273 100 100 100 138.0 +498 002907 南方中证500量化增强C 股票指数 290 100 100 100 100 138.0 +499 002692 富国创新科技混合 混合型 100 291 100 100 100 138.2 +500 260115 景顺长城中小盘混合 混合型 194 198 100 100 100 138.4 +501 001815 华泰柏瑞激励动力混合A 混合型 292 100 100 100 100 138.4 +502 590005 中邮核心主题混合 混合型 293 100 100 100 100 138.6 +503 003292 嘉实优势成长混合 混合型 100 293 100 100 100 138.6 +504 005283 中金价值轮动混合C none 155 239 100 100 100 138.8 +505 164823 工银瑞信深证成份指数(LOF) none 294 100 100 100 100 138.8 +506 004195 招商中证1000指数增强C 股票指数 99 296 100 100 100 139.0 +507 206010 鹏华深证民营ETF联接 联接基金 295 100 100 100 100 139.0 +508 519150 新华优选消费混合 混合型 100 295 100 100 100 139.0 +509 470006 汇添富医药保健混合 混合型 167 229 100 100 100 139.2 +510 003598 华商润丰灵活配置混合 混合型 197 199 100 100 100 139.2 +511 001561 天弘中证移动互联网C 股票指数 249 147 100 100 100 139.2 +512 000711 嘉实医疗保健股票 股票型 297 100 100 100 100 139.4 +513 000549 华安大国新经济股票 股票型 100 297 100 100 100 139.4 +514 168001 国寿安保中证养老产业指数分级 股票指数 298 100 100 100 100 139.6 +515 000796 宝盈睿丰创新混合C 混合型 100 298 100 100 100 139.6 +516 502016 长信中证一带一路主题指数分级 股票指数 299 100 100 100 100 139.8 +517 001313 上投摩根智慧互联股票 股票型 100 299 100 100 100 139.8 +518 004194 招商中证1000指数增强A 股票指数 100 300 100 100 100 140.0 +519 165525 信诚中证基建工程指数LOF 股票指数 300 100 100 100 100 140.0 +520 001560 天弘中证移动互联网A 股票指数 250 151 100 100 100 140.2 +521 004521 安信工业4.0灵活配置混合A none 168 234 100 100 100 140.4 +522 000523 国投瑞银医疗保健混合 混合型 228 176 100 100 100 140.8 +523 005282 中金价值轮动混合A none 159 246 100 100 100 141.0 +524 519956 长信睿进混合C 混合型 207 212 100 100 100 143.8 +525 161616 融通医疗保健行业混合 混合型 259 165 100 100 100 144.8 +526 162201 泰达宏利成长混合 混合型 217 222 100 100 100 147.8 +527 003318 景顺中证500行业中性低波动 股票指数 163 277 100 100 100 148.0 +528 660011 农银中证500 股票指数 199 243 100 100 100 148.4 +529 001645 国泰大健康股票 股票型 287 159 100 100 100 149.2 +530 519957 长信睿进混合A 混合型 229 218 100 100 100 149.4 +531 001702 东方创新科技混合 混合型 264 184 100 100 100 149.6 +532 000008 嘉实中证500ETF联接 联接基金 192 258 100 100 100 150.0 +533 001039 嘉实先进制造股票 股票型 262 191 100 100 100 150.6 +534 004348 南方中证500ETF联接C 联接基金 203 259 100 100 100 152.4 +535 001052 华夏中证500ETF联接 联接基金 209 255 100 100 100 152.8 +536 001513 易方达信息产业混合 混合型 255 209 100 100 100 152.8 +537 160119 南方中证500ETF联接A 联接基金 204 261 100 100 100 153.0 +538 160616 鹏华中证500 股票指数 196 274 100 100 100 154.0 +539 162711 广发中证500ETF联接A 联接基金 216 254 100 100 100 154.0 +540 002903 广发中证500ETF联接C 联接基金 219 251 100 100 100 154.0 +541 501037 汇添富中证500C none 201 276 100 100 100 155.4 +542 001214 华泰柏瑞中证500ETF联接 联接基金 212 270 100 100 100 156.4 +543 001709 华富物联世界灵活配置混合 混合型 283 201 100 100 100 156.8 +544 001241 国寿安保中证500ETF联接 联接基金 214 271 100 100 100 157.0 +545 501036 汇添富中证500A none 206 282 100 100 100 157.6 +546 000962 天弘中证500指数 股票指数 224 264 100 100 100 157.6 +547 001069 华泰柏瑞消费成长混合 混合型 261 236 100 100 100 159.4 +548 004536 嘉实中小企业量化活力混合 none 280 227 100 100 100 161.4 +549 000059 国联安中证医药100 股票指数 244 265 100 100 100 161.8 +550 270026 广发中小板300联接 联接基金 277 232 100 100 100 161.8 +551 570007 诺德优选30混合 混合型 284 226 100 100 100 162.0 +552 164809 工银中证500分级 股票指数 221 294 100 100 100 163.0 +553 001455 景顺长城中证500ETF联接 联接基金 231 292 100 100 100 164.6 +554 202025 南方上证380联接 联接基金 242 287 100 100 100 165.8 +555 001551 天弘中证医药100C 股票指数 251 283 100 100 100 166.8 +556 001550 天弘中证医药100A 股票指数 252 284 100 100 100 167.2 +557 070021 嘉实主题新动力混合 混合型 278 267 100 100 100 169.0 +558 001351 诺安中证500ETF联接 联接基金 272 290 100 100 100 172.4 +559 519929 长信电子信息行业量化混合 混合型 296 279 100 100 100 175.0 diff --git "a/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\2342.txt" "b/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\2342.txt" new file mode 100644 index 0000000..7f52421 --- /dev/null +++ "b/\345\237\272\351\207\221\347\273\274\345\220\210\346\216\222\345\220\215\347\273\223\346\236\2342.txt" @@ -0,0 +1,6 @@ +1 164906 交银中证海外中国互联网指数 QDII-指数 1 2 1.5 +2 241001 华宝海外中国成长混合 QDII 2 3 2.5 +3 000934 国富大中华精选混合 QDII 6 1 3.5 +4 003243 上投摩根中国世纪人民币 QDII 3 6 4.5 +5 118001 易方达亚洲精选 QDII 4 5 4.5 +6 000988 嘉实全球互联网股票人民币 QDII 5 4 4.5