커뮤니티
3개의 지표를 수정바랍니다.
2011-06-07 18:49:18
612
글번호 39502
우선 먼저 인사합니다
감사합니다
수동진입후 자동청산식을 하고싶습니다. 단 3개의 지표를 시간별로 하고싶고요
중복매수신호가나오는데 어떻게해야하는지요
잦은매매가 이루어 지는데 안일어나게 할수는 없는지요
최적화 부탁드립니다
Input : position(1),시스템적용시간(90000);
if index == 0 Then{
if position == 1 Then
buy();
if position == -1 Then
sell();
}
if CurrentDate == sdate and stime >= 시스템적용시간 Then{
if MarketPosition == 1 and 매수청산조건 Then
exitlong("bx1");
if MarketPosition == -1 and 매도청산조건 then
ExitShort("sx1");
}
input : stoploss(0.01), break(0.016),bigprofit(0.036),vv(2.5);
var1 = data1(c);
var2 = data1(H);
var3 = data1(L);
if var1 > var2[1] Then
buy("매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절");
}
if var1 < var3[1] Then
sell("매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절");
}
Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62);
Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False);
PcntR = PercentR(PercentRLen);
AvgValue = MA(Close, PercentRLen);
If PcntR < OverSold Then
Setup1 = True;
If PcntR > OverBought Then
Setup1 = False;
If PcntR > OverBought Then
Setup2 = True;
If PcntR < OverSold Then
Setup2 = False;
If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin
Setup1 = False;
Buy ("11시이후매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성1");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절1");
}
End;
If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin
Setup2 = False;
Sell ("11시이후매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성1");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절1");
}
End;
Inputs: Length1(20),Length2(12),Length3(12),OverSold11(30),OverBought11(70);
Variables: KLine(0), DLine(0);
KLine = StochasticsK(Length1,Length2);
DLine = StochasticsD(Length1,Length2,Length3);
If Crossup(KLine, DLine) AND KLine < OverSold11 AND DLine < OverSold11 Then
buy("스토매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성2");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절2");
}
If CrossDown(KLine, DLine) AND KLine > OverBought11 AND DLine < OverBought11 Then
sell ("스토매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성2");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절2");
답변 1
예스스탁 예스스탁 답변
2011-06-08 10:37:44
안녕하세요
예스스탁입니다.
식을 어떻게 구성해야 할지 모르겠습니다.
수동진입후 자동청산하는식에서 진입은 과거의 임의의 봉에 발생시키는 가짜 신호입니다. 이신호를 기점으로 계산되는 식은 의미가 없고 진입을
수동으로 하시므로 진입식은 모두 제거되어야만 합니다.
각식의 시간대를 지정해 주시기 바랍니다.
즐거운 하루되세요
> 외국인 님이 쓴 글입니다.
> 제목 : 3개의 지표를 수정바랍니다.
> 우선 먼저 인사합니다
감사합니다
수동진입후 자동청산식을 하고싶습니다. 단 3개의 지표를 시간별로 하고싶고요
중복매수신호가나오는데 어떻게해야하는지요
잦은매매가 이루어 지는데 안일어나게 할수는 없는지요
최적화 부탁드립니다
Input : position(1),시스템적용시간(90000);
if index == 0 Then{
if position == 1 Then
buy();
if position == -1 Then
sell();
}
if CurrentDate == sdate and stime >= 시스템적용시간 Then{
if MarketPosition == 1 and 매수청산조건 Then
exitlong("bx1");
if MarketPosition == -1 and 매도청산조건 then
ExitShort("sx1");
}
input : stoploss(0.01), break(0.016),bigprofit(0.036),vv(2.5);
var1 = data1(c);
var2 = data1(H);
var3 = data1(L);
if var1 > var2[1] Then
buy("매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절");
}
if var1 < var3[1] Then
sell("매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절");
}
Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62);
Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False);
PcntR = PercentR(PercentRLen);
AvgValue = MA(Close, PercentRLen);
If PcntR < OverSold Then
Setup1 = True;
If PcntR > OverBought Then
Setup1 = False;
If PcntR > OverBought Then
Setup2 = True;
If PcntR < OverSold Then
Setup2 = False;
If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin
Setup1 = False;
Buy ("11시이후매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성1");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절1");
}
End;
If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin
Setup2 = False;
Sell ("11시이후매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성1");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절1");
}
End;
Inputs: Length1(20),Length2(12),Length3(12),OverSold11(30),OverBought11(70);
Variables: KLine(0), DLine(0);
KLine = StochasticsK(Length1,Length2);
DLine = StochasticsD(Length1,Length2,Length3);
If Crossup(KLine, DLine) AND KLine < OverSold11 AND DLine < OverSold11 Then
buy("스토매수");
If marketposition ==1 then {
if var3 <= var1[1]-data1(atr(30)[1])*vv then
exitlong("매수변동성2");
}
If marketposition == 1 then {
if var3 <= var1[BarsSinceEntry]*0.99 then
ExitLong("매수손절2");
}
If CrossDown(KLine, DLine) AND KLine > OverBought11 AND DLine < OverBought11 Then
sell ("스토매도");
If marketposition == 1 then {
if var2 >= var1[1]+data1(atr(30)[1])*vv then
ExitLong("매도변동성2");
}
If marketposition == 1 then {
if var2 >= var1[BarsSinceEntry]*1.01 then
ExitLong("매도손절2");
다음글
이전글