📄 profile.cpp.svn-base
字号:
/*
Cross Platform Core Code.
Copyright(R) 2001-2002 Balang Software.
All rights reserved.
Using:
class CTechParameters;
class CColorRefContainer;
class CColorClass;
class CColorClassContainer;
class CStProfile;
*/
#include "stdafx.h"
#include "../Include/Profile.h"
#include "SelfDB.h"
#ifdef _DEBUG
#undef THIS_FILE
static char THIS_FILE[]=__FILE__;
#define new DEBUG_NEW
#endif
//////////////////////////////////////////////////////////////////////
// CTechParameters
CTechParameters::CTechParameters( )
{
}
void CTechParameters::Clear( )
{
ma.Clear( );
bbi.Clear( );
boll.Clear( );
pv.Clear( );
sar.Clear( );
dj.Clear( );
cw.Clear( );
macd.Clear( );
mike.Clear( );
psy.Clear( );
volume.Clear( );
nvi.Clear( );
pvi.Clear( );
vr.Clear( );
vroc.Clear( );
obv.Clear( );
mobv.Clear( );
mfi.Clear( );
vmacd.Clear( );
wvad.Clear( );
emv.Clear( );
vrsi.Clear( );
nvrsi.Clear( );
ad.Clear( );
ci.Clear( );
kdj.Clear( );
r.Clear( );
rsi.Clear( );
bias.Clear( );
mtm.Clear( );
dmi.Clear( );
roc.Clear( );
cci.Clear( );
cv.Clear( );
arbr.Clear( );
cr.Clear( );
osc.Clear( );
uos.Clear( );
maosc.Clear( );
bias36.Clear( );
dpo.Clear( );
kst.Clear( );
rei.Clear( );
dmki.Clear( );
pcnt.Clear( );
hlc.Clear( );
cdp.Clear( );
asi.Clear( );
atr.Clear( );
cyo.Clear( );
dcyo.Clear( );
hsl.Clear( );
dper.Clear( );
}
void CTechParameters::SetKData( CKData * pKData )
{
ma.SetKData( pKData );
bbi.SetKData( pKData );
boll.SetKData( pKData );
pv.SetKData( pKData );
sar.SetKData( pKData );
dj.SetKData( pKData );
cw.SetKData( pKData );
macd.SetKData( pKData );
mike.SetKData( pKData );
psy.SetKData( pKData );
volume.SetKData( pKData );
nvi.SetKData( pKData );
pvi.SetKData( pKData );
vr.SetKData( pKData );
vroc.SetKData( pKData );
obv.SetKData( pKData );
mobv.SetKData( pKData );
mfi.SetKData( pKData );
vmacd.SetKData( pKData );
wvad.SetKData( pKData );
emv.SetKData( pKData );
vrsi.SetKData( pKData );
nvrsi.SetKData( pKData );
ad.SetKData( pKData );
ci.SetKData( pKData );
kdj.SetKData( pKData );
r.SetKData( pKData );
rsi.SetKData( pKData );
bias.SetKData( pKData );
mtm.SetKData( pKData );
dmi.SetKData( pKData );
roc.SetKData( pKData );
cci.SetKData( pKData );
cv.SetKData( pKData );
arbr.SetKData( pKData );
cr.SetKData( pKData );
osc.SetKData( pKData );
uos.SetKData( pKData );
maosc.SetKData( pKData );
bias36.SetKData( pKData );
dpo.SetKData( pKData );
kst.SetKData( pKData );
rei.SetKData( pKData );
dmki.SetKData( pKData );
pcnt.SetKData( pKData );
hlc.SetKData( pKData );
cdp.SetKData( pKData );
asi.SetKData( pKData );
atr.SetKData( pKData );
cyo.SetKData( pKData );
dcyo.SetKData( pKData );
hsl.SetKData( pKData );
dper.SetKData( pKData );
}
void CTechParameters::SetDefaultParametersAll( )
{
ma.SetDefaultParameters( );
bbi.SetDefaultParameters( );
boll.SetDefaultParameters( );
pv.SetDefaultParameters( );
sar.SetDefaultParameters( );
dj.SetDefaultParameters( );
cw.SetDefaultParameters( );
macd.SetDefaultParameters( );
mike.SetDefaultParameters( );
psy.SetDefaultParameters( );
volume.SetDefaultParameters( );
nvi.SetDefaultParameters( );
pvi.SetDefaultParameters( );
vr.SetDefaultParameters( );
vroc.SetDefaultParameters( );
obv.SetDefaultParameters( );
mobv.SetDefaultParameters( );
mfi.SetDefaultParameters( );
vmacd.SetDefaultParameters( );
wvad.SetDefaultParameters( );
emv.SetDefaultParameters( );
vrsi.SetDefaultParameters( );
nvrsi.SetDefaultParameters( );
ad.SetDefaultParameters( );
ci.SetDefaultParameters( );
kdj.SetDefaultParameters( );
r.SetDefaultParameters( );
rsi.SetDefaultParameters( );
bias.SetDefaultParameters( );
mtm.SetDefaultParameters( );
dmi.SetDefaultParameters( );
roc.SetDefaultParameters( );
cci.SetDefaultParameters( );
cv.SetDefaultParameters( );
arbr.SetDefaultParameters( );
cr.SetDefaultParameters( );
osc.SetDefaultParameters( );
uos.SetDefaultParameters( );
maosc.SetDefaultParameters( );
bias36.SetDefaultParameters( );
dpo.SetDefaultParameters( );
kst.SetDefaultParameters( );
rei.SetDefaultParameters( );
dmki.SetDefaultParameters( );
pcnt.SetDefaultParameters( );
hlc.SetDefaultParameters( );
cdp.SetDefaultParameters( );
asi.SetDefaultParameters( );
atr.SetDefaultParameters( );
cyo.SetDefaultParameters( );
dcyo.SetDefaultParameters( );
hsl.SetDefaultParameters( );
dper.SetDefaultParameters( );
AfxGetProfile().StoreProfile( );
}
BOOL CTechParameters::FindParameters( UINT nTech, CTechnique * pTech )
{
switch( nTech )
{
case STT_MA: ((CMA *)pTech)->AttachParameters( ma ); break;
case STT_BBI: ((CBBI *)pTech)->AttachParameters( bbi ); break;
case STT_BOLL: ((CBOLL *)pTech)->AttachParameters( boll ); break;
case STT_PV: ((CPV *)pTech)->AttachParameters( pv ); break;
case STT_SAR: ((CSAR *)pTech)->AttachParameters( sar ); break;
case STT_DJ: ((CDJ *)pTech)->AttachParameters( dj ); break;
case STT_CW: ((CCW *)pTech)->AttachParameters( cw ); break;
case STT_MACD: ((CMACD *)pTech)->AttachParameters( macd ); break;
case STT_MIKE: ((CMIKE *)pTech)->AttachParameters( mike ); break;
case STT_PSY: ((CPSY *)pTech)->AttachParameters( psy ); break;
case STT_VOLUME: ((CVOLUME *)pTech)->AttachParameters( volume ); break;
case STT_NVI: ((CNVI *)pTech)->AttachParameters( nvi ); break;
case STT_PVI: ((CPVI *)pTech)->AttachParameters( pvi ); break;
case STT_VR: ((CVR *)pTech)->AttachParameters( vr ); break;
case STT_VROC: ((CVROC *)pTech)->AttachParameters( vroc ); break;
case STT_OBV: ((COBV *)pTech)->AttachParameters( obv ); break;
case STT_MOBV: ((CMOBV *)pTech)->AttachParameters( mobv ); break;
case STT_MFI: ((CMFI *)pTech)->AttachParameters( mfi ); break;
case STT_VMACD: ((CVMACD *)pTech)->AttachParameters( vmacd ); break;
case STT_WVAD: ((CWVAD *)pTech)->AttachParameters( wvad ); break;
case STT_EMV: ((CEMV *)pTech)->AttachParameters( emv ); break;
case STT_VRSI: ((CVRSI *)pTech)->AttachParameters( vrsi ); break;
case STT_NVRSI: ((CNVRSI *)pTech)->AttachParameters( nvrsi ); break;
case STT_AD: ((CAD *)pTech)->AttachParameters( ad ); break;
case STT_CI: ((CCI *)pTech)->AttachParameters( ci ); break;
case STT_KDJ: ((CKDJ *)pTech)->AttachParameters( kdj ); break;
case STT_R: ((CR *)pTech)->AttachParameters( r ); break;
case STT_RSI: ((CRSI *)pTech)->AttachParameters( rsi ); break;
case STT_BIAS: ((CBIAS *)pTech)->AttachParameters( bias ); break;
case STT_MTM: ((CMTM *)pTech)->AttachParameters( mtm ); break;
case STT_DMI: ((CDMI *)pTech)->AttachParameters( dmi ); break;
case STT_ROC: ((CROC *)pTech)->AttachParameters( roc ); break;
case STT_CCI: ((CCCI *)pTech)->AttachParameters( cci ); break;
case STT_CV: ((CCV *)pTech)->AttachParameters( cv ); break;
case STT_ARBR: ((CARBR *)pTech)->AttachParameters( arbr ); break;
case STT_CR: ((CCR *)pTech)->AttachParameters( cr ); break;
case STT_OSC: ((COSC *)pTech)->AttachParameters( osc ); break;
case STT_UOS: ((CUOS *)pTech)->AttachParameters( uos ); break;
case STT_MAOSC: ((CMAOSC *)pTech)->AttachParameters( maosc ); break;
case STT_36BIAS: ((C36BIAS *)pTech)->AttachParameters( bias36 ); break;
case STT_DPO: ((CDPO *)pTech)->AttachParameters( dpo ); break;
case STT_KST: ((CKST *)pTech)->AttachParameters( kst ); break;
case STT_REI: ((CREI *)pTech)->AttachParameters( rei ); break;
case STT_DMKI: ((CDMKI *)pTech)->AttachParameters( dmki ); break;
case STT_PCNT: ((CPCNT *)pTech)->AttachParameters( pcnt ); break;
case STT_HLC: ((CHLC *)pTech)->AttachParameters( hlc ); break;
case STT_CDP: ((CCDP *)pTech)->AttachParameters( cdp ); break;
case STT_ASI: ((CASI *)pTech)->AttachParameters( asi ); break;
case STT_ATR: ((CATR *)pTech)->AttachParameters( atr ); break;
case STT_CYO: ((CCYO *)pTech)->AttachParameters( cyo ); break;
case STT_DCYO: ((CDCYO *)pTech)->AttachParameters( dcyo ); break;
case STT_HSL: ((CHSL *)pTech)->AttachParameters( hsl ); break;
case STT_DPER: ((CDPER *)pTech)->AttachParameters( dper ); break;
default:
SP_ASSERT( FALSE );
return FALSE;
}
return TRUE;
}
void CTechParameters::Serialize( CSPArchive &ar )
{
if( ar.IsStoring() )
{
// CMA
ar << ma.m_nType;
ma.m_adwMADays.Serialize( ar );
ar << ma.m_itsGoldenFork;
ar << ma.m_itsDeadFork;
ar << ma.m_itsLong;
ar << ma.m_itsShort;
// CBBI
ar << bbi.m_nMA1Days;
ar << bbi.m_nMA2Days;
ar << bbi.m_nMA3Days;
ar << bbi.m_nMA4Days;
ar << bbi.m_itsGoldenFork;
ar << bbi.m_itsDeadFork;
// CBOLL
ar << boll.m_dMultiUp;
ar << boll.m_dMultiDown;
ar << boll.m_nMADays;
ar << boll.m_itsSupport;
ar << boll.m_itsResistance;
// CPV
// CSAR
ar << sar.m_nInitDays;
ar << sar.m_bFirstUp;
ar << sar.m_dAFStep;
ar << sar.m_dAFMax;
ar << sar.m_itsBuy;
ar << sar.m_itsSell;
// CDJ
ar << dj.m_strCodeSha;
ar << dj.m_strCodeSzn;
// CCW
ar << cw.m_dChangeHand;
// CMACD
ar << macd.m_nEMA1Days;
ar << macd.m_nEMA2Days;
ar << macd.m_nDIFDays;
ar << macd.m_itsDeviateOnBottom;
ar << macd.m_itsDeviateOnTop;
ar << macd.m_itsGoldenFork;
ar << macd.m_itsDeadFork;
// CMIKE
ar << mike.m_nDays;
// CPSY
ar << psy.m_nDays;
ar << psy.m_itsSold;
ar << psy.m_itsBought;
// CVOLUME
volume.m_adwMADays.Serialize( ar );
ar << volume.m_itsDeviateOnBottom;
ar << volume.m_itsDeviateOnTop;
ar << volume.m_itsLong;
ar << volume.m_itsShort;
// CNVI
ar << nvi.m_nMADays;
ar << nvi.m_itsGoldenFork;
ar << nvi.m_itsDeadFork;
// CPVI
ar << pvi.m_nMADays;
ar << pvi.m_itsGoldenFork;
ar << pvi.m_itsDeadFork;
// CVR
ar << vr.m_nDays;
ar << vr.m_itsLong;
ar << vr.m_itsShort;
// CVROC
ar << vroc.m_nDays;
ar << vroc.m_nMADays;
ar << vroc.m_itsDeviateOnBottom;
ar << vroc.m_itsDeviateOnTop;
// COBV
ar << obv.m_itsDeviateOnBottom;
ar << obv.m_itsDeviateOnTop;
// CMOBV
ar << mobv.m_nDays1;
ar << mobv.m_nDays2;
ar << mobv.m_itsGoldenFork;
ar << mobv.m_itsDeadFork;
// CMFI
ar << mfi.m_nDays;
ar << mfi.m_itsLong;
ar << mfi.m_itsShort;
// CVMACD
ar << vmacd.m_nEMA1Days;
ar << vmacd.m_nEMA2Days;
ar << vmacd.m_nDIFDays;
ar << vmacd.m_itsDeviateOnBottom;
ar << vmacd.m_itsDeviateOnTop;
ar << vmacd.m_itsGoldenFork;
ar << vmacd.m_itsDeadFork;
// CWVAD
ar << wvad.m_nDays;
ar << wvad.m_itsLong;
ar << wvad.m_itsShort;
// CEMV
ar << emv.m_nDays;
ar << emv.m_nMADays;
ar << emv.m_itsGoldenFork;
ar << emv.m_itsDeadFork;
// CVRSI
ar << vrsi.m_nDays;
ar << vrsi.m_itsDeviateOnBottom;
ar << vrsi.m_itsDeviateOnTop;
ar << vrsi.m_itsSold;
ar << vrsi.m_itsBought;
// CNVRSI
ar << nvrsi.m_nDays;
ar << nvrsi.m_itsDeviateOnBottom;
ar << nvrsi.m_itsDeviateOnTop;
ar << nvrsi.m_itsSold;
ar << nvrsi.m_itsBought;
// CAD
ar << ad.m_nDays;
// CCI
// CKDJ
ar << kdj.m_nRSVDays;
ar << kdj.m_nKDays;
ar << kdj.m_nDDays;
ar << kdj.m_nJ;
ar << kdj.m_itsGoldenFork;
ar << kdj.m_itsDeadFork;
// CR
ar << r.m_nDays;
// CRSI
rsi.m_adwDays.Serialize( ar );
ar << rsi.m_itsSold;
ar << rsi.m_itsGoldenFork;
ar << rsi.m_itsDeadFork;
// CBIAS
ar << bias.m_nDays;
ar << bias.m_itsSold;
ar << bias.m_itsBought;
// CMTM
ar << mtm.m_nDays;
ar << mtm.m_nMADays;
ar << mtm.m_itsGoldenFork;
ar << mtm.m_itsDeadFork;
// CDMI
ar << dmi.m_nDays;
// CROC
ar << roc.m_nDays;
ar << roc.m_nMADays;
ar << roc.m_itsGoldenFork;
ar << roc.m_itsDeadFork;
// CCCI
ar << cci.m_nDays;
ar << cci.m_dQuotiety;
ar << cci.m_nMADays;
ar << cci.m_itsGoldenFork;
ar << cci.m_itsDeadFork;
// CCV
ar << cv.m_nMAHLDays;
ar << cv.m_nCVDays;
ar << cv.m_itsSold;
ar << cv.m_itsBought;
// CARBR
ar << arbr.m_nDays;
ar << arbr.m_itsGoldenFork;
ar << arbr.m_itsDeadFork;
ar << arbr.m_itsSold;
ar << arbr.m_itsBought;
// CCR
ar << cr.m_nDays;
ar << cr.m_nMADaysA;
ar << cr.m_nMADaysB;
ar << cr.m_nMADaysC;
ar << cr.m_nMADaysD;
ar << cr.m_itsSold;
ar << cr.m_itsBought;
// COSC
ar << osc.m_nDays;
ar << osc.m_nMADays;
ar << osc.m_itsGoldenFork;
ar << osc.m_itsDeadFork;
// CUOS
ar << uos.m_nDays1;
ar << uos.m_nDays2;
ar << uos.m_nDays3;
ar << uos.m_nMADays;
ar << uos.m_itsGoldenFork;
ar << uos.m_itsDeadFork;
// CMAOSC
ar << maosc.m_nDays1;
ar << maosc.m_nDays2;
ar << maosc.m_nMADays;
ar << maosc.m_itsGoldenFork;
ar << maosc.m_itsDeadFork;
// C36BIAS
ar << bias36.m_itsSold;
ar << bias36.m_itsBought;
// CDPO
ar << dpo.m_nDays;
ar << dpo.m_nMADays;
ar << dpo.m_itsGoldenFork;
ar << dpo.m_itsDeadFork;
// CKST
kst.m_adwROCDays.Serialize( ar );
ar << kst.m_nMADays;
ar << kst.m_itsGoldenFork;
ar << kst.m_itsDeadFork;
// CREI
ar << rei.m_nDays;
ar << rei.m_itsLong;
ar << rei.m_itsShort;
// CDMKI
ar << dmki.m_nDays;
ar << dmki.m_itsSold;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -