বোল+মাবোল

লেখক:3 পিগি, তারিখ: ২০১৯-০৫-০৪ ১১ঃ৪১ঃ২৭
ট্যাগঃ

ব্রেকআউট এবং প্রত্যাহারের কৌশল খোলার সিগন্যালঃ ব্রেনিং ব্যান্ড ট্র্যাকের উপর সমতল লাইন গোল্ড ফর্ক, ব্রেনিং ব্যান্ড প্রশস্ততা বৃদ্ধি, মধ্য ট্র্যাক আপ, ক্যাডো; বিপরীতভাবে খালি সমতল সিগন্যালঃ ব্রেনিং ব্যান্ড সংকুচিত, ট্রেনের উপর সমতল স্ট্রিং ফর্ক বিপরীতমুখী সংকেতঃ ব্রেনিং ব্যান্ড প্রত্যাহার

সিগন্যাল এখনও ফিল্টার করা আছে।


import numpy as np
import talib
import time
if period == 1:
	per = PERIOD_M1
if period == 2:
	per = PERIOD_M3
if period == 3:
	per = PERIOD_M5
if period == 4:
	per = PERIOD_M15
if period == 5:
	per = PERIOD_M30
if period == 6:
	per = PERIOD_H1
	
status=0 #多:1  空:2

position = 0

def ontick():
	global position
	records = exchange.GetRecords(per)
	#------------指标计算---------
	#rsi = TA.RSI(records,14)
	#if rsi[-1] > 65 or rsi[-1] < 35:
	#    return
	bb = talib.BBANDS(records.Close,timeperiod=bo, nbdevup=2, nbdevdn=2, matype=0) #计算BB
	rsi = talib.RSI(records.Close,timeperiod=12)
	cmi = talib.CMO(records.Close,timeperiod=12)
	print(cmi[-1])
	move = talib.SMA(records.Close,ma2)#收盘价ma
	mabt = talib.SMA(bb[0],ma)#上轨ma
	mabd = talib.SMA(bb[2],ma)#下跪ma
	account = exchange.GetAccount()

	

	if bb[0][-1] > mabt[-1] and bb[0][-2] < mabt[-2] and bb[2][-1] < bb[2][-2] and bb[1][-1] > bb[1][-2] and records.Close[-1] > move[-1] and rsi[-1]>60:
		position += 1
		exchange.Buy(-1,account.Balance*0.1)
		#log('向上突破开多 '+ str(close[-1]))
	
	if bb[2][-1] < mabd[-1] and bb[2][-2] > mabd[-2] and bb[0][-1] > bb[0][-2] and bb[1][-1] < bb[1][-2] and records.Close[-1] < move[-1] and rsi[-1]<40:
		position -= 1
		exchange.Sell(-1,account.Stocks*0.1)
		#log('向下突破开空 '+ str(close[-1]))
	
	if bb[0][-1]-bb[2][-1] < bb[0][-2]-bb[2][-2]:
		if bb[0][-1] < mabt[-1] and bb[0][-2] > mabt[-2] and position> 0:
			position -= 1
			exchange.Sell(-1,account.Stocks*0.1)
			#log('多单平仓 '+ str(close[-1]))

		if bb[2][-1] > mabd[-1] and bb[2][-2] < mabd[-2] and position < 0:
			position += 1
			exchange.Buy(-1,account.Balance*0.1)
			#log('空单平仓 '+ str(close[-1]))

def main():
	while True:
		ontick()
		Sleep(30000)

আরো