커뮤니티
합리적인....
2013-10-11 10:44:08
176
글번호 68327
합리적인 청산방법 때문에 고민중입니다
아래와 같은 청산식의 구조는 어떻게 되나요?
<1단계>
진입한때가 STOC05의 Crossup(SK05,SD05)과 일치할 때 STOC05의 CrossDown(SK05,SD05)에 청산
진입한때가 STOC10의 Crossup(SK10,SD10)과 일치할 때 STOC10의 CrossDown(SK10,SD10)에 청산
진입한때가 STOC20의 Crossup(SK20,SD20)과 일치할 때 STOC20의 CrossDown(SK20,SD20)에 청산
<2단계>
진입한때가 STOC05, STOC10, STOC20의 Crossup과 복수(2개이상)로 일치할때에는 큰것으로청산
예)진입한때가 STOC05와 STOC10의 Crossup과 일치할 때 , STOC10의 CrossDown(SK10,SD10)에 청산
진입한때가 STOC10와 STOC20의 Crossup과 일치할 때 , STOC20의 CrossDown(SK20,SD20)에 청산
<3단계>
진입한때가 STOC05, STOC10, STOC20의 Crossup과 일치하지 않을때에는
진입전후로 +-3봉이내 Crossup이 발생하는 STOC로 청산하고
복수(2개이상)로 해당될때에는 Crossup이 가장 가까운 STOC으로 청산
복수(2개이상)로 해당되고 Crossup이 일치할경우 큰것으로 청산
<4단계>
모든 경우가 없을 경우에는 STOC30의 CrossDown(SK30,SD30)에 청산
==============스톡 산식============
Array : SHV05[5](0),SHI05[5](0),SHM05[5](0),SHD05[5](0);
Array : SLV05[5](0),SLI05[5](0),SLM05[5](0),SLD05[5](0);
If SD05[2]<SD05[1] and SD05[1]>SD05[0] Then { //꼭지점
SHV05[0] = SD05[1];
SHI05[0] = index[0];
SHM05[0] = Ma05[0];
SHD05[0] = D0[0];
For J=1 to 4 {
SHV05[J] = SHV05[J-1][1];
SHI05[J] = SHI05[J-1][1];
SHM05[J] = SHM05[J-1][1];
SHD05[J] = SHD05[J-1][1];
}
}
If SD05[2]>SD05[1] and SD05[1]<SD05[0] Then { //바닥점
SLV05[0] = SD05[1];
SLI05[0] = index[0];
SLM05[0] = Ma05[0];
SLD05[0] = D0[0];
For J=1 to 4 {
SLV05[J] = SLV05[J-1][1];
SLI05[J] = SLI05[J-1][1];
SLM05[J] = SLM05[J-1][1];
SLD05[J] = SLD05[J-1][1];
}
}
Array : SHV10[5](0),SHI10[5](0),SHM10[5](0),SHD10[5](0);
Array : SLV10[5](0),SLI10[5](0),SLM10[5](0),SLD10[5](0);
If SD10[2]<SD10[1] and SD10[1]>SD10[0] Then { //꼭지점
SHV10[0] = SD10[1];
SHI10[0] = index[0];
SHM10[0] = Ma05[0];
SHD10[0] = D0[0];
For J=1 to 4 {
SHV10[J] = SHV10[J-1][1];
SHI10[J] = SHI10[J-1][1];
SHM10[J] = SHM10[J-1][1];
SHD10[J] = SHD10[J-1][1];
}
}
If SD10[2]>SD10[1] and SD10[1]<SD10[0] Then { //바닥점
SLV10[0] = SD10[1];
SLI10[0] = index[0];
SLM10[0] = Ma05[0];
SLD10[0] = D0[0];
For J=1 to 4 {
SLV10[J] = SLV10[J-1][1];
SLI10[J] = SLI10[J-1][1];
SLM10[J] = SLM10[J-1][1];
SLD10[J] = SLD10[J-1][1];
}
}
Array : SHV20[5](0),SHI20[5](0),SHM20[5](0),SHD20[5](0);
Array : SLV20[5](0),SLI20[5](0),SLM20[5](0),SLD20[5](0);
If SD20[2]<SD20[1] and SD20[1]>SD20[0] Then { //꼭지점
SHV20[0] = SD20[1];
SHI20[0] = index[0];
SHM20[0] = Ma05[0];
SHD20[0] = D0[0];
For J=1 to 4 {
SHV20[J] = SHV20[J-1][1];
SHI20[J] = SHI20[J-1][1];
SHM20[J] = SHM20[J-1][1];
SHD20[J] = SHD20[J-1][1];
}
}
If SD20[2]>SD20[1] and SD20[1]<SD20[0] Then { //바닥점
SLV20[0] = SD20[1];
SLI20[0] = index[0];
SLM20[0] = Ma05[0];
SLD20[0] = D0[0];
For J=1 to 4 {
SLV20[J] = SLV20[J-1][1];
SLI20[J] = SLI20[J-1][1];
SLM20[J] = SLM20[J-1][1];
SLD20[J] = SLD20[J-1][1];
}
}
답변 1
예스스탁 예스스탁 답변
2013-10-11 16:14:32
안녕하세요
예스스탁입니다.
var : Case(0),idx1(0),idx2(0),idx3(0);
if Crossup(SK05,SD05) Then
idx1 = index;
if Crossup(SK10,SD10) Then
idx2 = index;
if Crossup(SK20,SD20) Then
idx3 = index;
if MarketPosition == 1 Then{
if BarsSinceEntry == 1 Then{
if index[BarsSinceEntry] == idx1 Then
Case = 1;
if index[BarsSinceEntry] == idx2 Then
Case = 2;
if index[BarsSinceEntry] == idx3 Then
Case = 3;
if Case == 0 Then{
if idx1 >= max(idx2,idx3) and idx1 >= index[BarsSinceEntry]-3 Then
Case = 1;
if idx2 >= max(idx1,idx3) and idx2 >= index[BarsSinceEntry]-3 Then
Case = 2;
if idx3 >= max(idx2,idx3) and idx3 >= index[BarsSinceEntry]-3 Then
Case = 3;
}
}
if Case == 0 and BarsSinceEntry == 3 Then{
if idx1 >= max(idx2,idx3) and idx1 > index[BarsSinceEntry] Then
Case = 1;
if idx2 >= max(idx1,idx3) and idx2 > index[BarsSinceEntry] Then
Case = 2;
if idx3 >= max(idx2,idx3) and idx3 > index[BarsSinceEntry] Then
Case = 3;
}
if Case == 1 and CrossDown(SK05,SD05) Then
ExitLong();
if Case == 2 and CrossDown(SK10,SD10) Then
ExitLong();
if Case == 3 and CrossDown(SK20,SD20) Then
ExitLong();
if Case == 0 and CrossDown(SK30,SD30) Then
ExitLong();
}
if MarketPosition != 1 Then
Case = 0;
즐거운 하루되세요
> 티끌 님이 쓴 글입니다.
> 제목 : 합리적인....
> 합리적인 청산방법 때문에 고민중입니다
아래와 같은 청산식의 구조는 어떻게 되나요?
<1단계>
진입한때가 STOC05의 Crossup(SK05,SD05)과 일치할 때 STOC05의 CrossDown(SK05,SD05)에 청산
진입한때가 STOC10의 Crossup(SK10,SD10)과 일치할 때 STOC10의 CrossDown(SK10,SD10)에 청산
진입한때가 STOC20의 Crossup(SK20,SD20)과 일치할 때 STOC20의 CrossDown(SK20,SD20)에 청산
<2단계>
진입한때가 STOC05, STOC10, STOC20의 Crossup과 복수(2개이상)로 일치할때에는 큰것으로청산
예)진입한때가 STOC05와 STOC10의 Crossup과 일치할 때 , STOC10의 CrossDown(SK10,SD10)에 청산
진입한때가 STOC10와 STOC20의 Crossup과 일치할 때 , STOC20의 CrossDown(SK20,SD20)에 청산
<3단계>
진입한때가 STOC05, STOC10, STOC20의 Crossup과 일치하지 않을때에는
진입전후로 +-3봉이내 Crossup이 발생하는 STOC로 청산하고
복수(2개이상)로 해당될때에는 Crossup이 가장 가까운 STOC으로 청산
복수(2개이상)로 해당되고 Crossup이 일치할경우 큰것으로 청산
<4단계>
모든 경우가 없을 경우에는 STOC30의 CrossDown(SK30,SD30)에 청산
==============스톡 산식============
Array : SHV05[5](0),SHI05[5](0),SHM05[5](0),SHD05[5](0);
Array : SLV05[5](0),SLI05[5](0),SLM05[5](0),SLD05[5](0);
If SD05[2]<SD05[1] and SD05[1]>SD05[0] Then { //꼭지점
SHV05[0] = SD05[1];
SHI05[0] = index[0];
SHM05[0] = Ma05[0];
SHD05[0] = D0[0];
For J=1 to 4 {
SHV05[J] = SHV05[J-1][1];
SHI05[J] = SHI05[J-1][1];
SHM05[J] = SHM05[J-1][1];
SHD05[J] = SHD05[J-1][1];
}
}
If SD05[2]>SD05[1] and SD05[1]<SD05[0] Then { //바닥점
SLV05[0] = SD05[1];
SLI05[0] = index[0];
SLM05[0] = Ma05[0];
SLD05[0] = D0[0];
For J=1 to 4 {
SLV05[J] = SLV05[J-1][1];
SLI05[J] = SLI05[J-1][1];
SLM05[J] = SLM05[J-1][1];
SLD05[J] = SLD05[J-1][1];
}
}
Array : SHV10[5](0),SHI10[5](0),SHM10[5](0),SHD10[5](0);
Array : SLV10[5](0),SLI10[5](0),SLM10[5](0),SLD10[5](0);
If SD10[2]<SD10[1] and SD10[1]>SD10[0] Then { //꼭지점
SHV10[0] = SD10[1];
SHI10[0] = index[0];
SHM10[0] = Ma05[0];
SHD10[0] = D0[0];
For J=1 to 4 {
SHV10[J] = SHV10[J-1][1];
SHI10[J] = SHI10[J-1][1];
SHM10[J] = SHM10[J-1][1];
SHD10[J] = SHD10[J-1][1];
}
}
If SD10[2]>SD10[1] and SD10[1]<SD10[0] Then { //바닥점
SLV10[0] = SD10[1];
SLI10[0] = index[0];
SLM10[0] = Ma05[0];
SLD10[0] = D0[0];
For J=1 to 4 {
SLV10[J] = SLV10[J-1][1];
SLI10[J] = SLI10[J-1][1];
SLM10[J] = SLM10[J-1][1];
SLD10[J] = SLD10[J-1][1];
}
}
Array : SHV20[5](0),SHI20[5](0),SHM20[5](0),SHD20[5](0);
Array : SLV20[5](0),SLI20[5](0),SLM20[5](0),SLD20[5](0);
If SD20[2]<SD20[1] and SD20[1]>SD20[0] Then { //꼭지점
SHV20[0] = SD20[1];
SHI20[0] = index[0];
SHM20[0] = Ma05[0];
SHD20[0] = D0[0];
For J=1 to 4 {
SHV20[J] = SHV20[J-1][1];
SHI20[J] = SHI20[J-1][1];
SHM20[J] = SHM20[J-1][1];
SHD20[J] = SHD20[J-1][1];
}
}
If SD20[2]>SD20[1] and SD20[1]<SD20[0] Then { //바닥점
SLV20[0] = SD20[1];
SLI20[0] = index[0];
SLM20[0] = Ma05[0];
SLD20[0] = D0[0];
For J=1 to 4 {
SLV20[J] = SLV20[J-1][1];
SLI20[J] = SLI20[J-1][1];
SLM20[J] = SLM20[J-1][1];
SLD20[J] = SLD20[J-1][1];
}
}