커뮤니티
목표수익구간
2019-07-31 23:12:20
257
글번호 130824
* 지난주 도움에 고맙 습니다.
작성해주신 수식은 40틱 되면 자동 으로 잘 청산이 되는데 2가지 문제가 있습니다.
1. 수익 36틱 에서 다시 매매가 되어 총손실로 되는 경우가 발생 합니다.
2. 수익중 중간에 청산 되어 좀더 수익이 될수 있는데 청산이 됨니다.
수식요청: 꼭 40틱이 아니고 35 ~ 50틱 사이면 당일 매매중지되는 수식으로
수정 좀 부탁 드립니다.
즉 청산이 매번 될때 마다 수익이 "목표수익구간"에 있으면 다음 신호는 진입금지 입니다.
#####
Input : 당일수익틱수(40);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false);
당일수익 = PriceScale*당일수익틱수;
if Bdate != Bdate[1] Then
{
Xcond = false;
N1 = NetProfit;
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= 당일수익 Then
Xcond = true;
if (IsExitName("목표40만원달성1",1) == true or IsExitName("목표40만원달성2",1) == true) then
Xcond = true;
}
if Xcond == false then
{
#진입식
#가장 위
if MarketPosition == 1 then{ExitLong("목표40만원달성1",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts)); }
if MarketPosition == -1 then{ExitShort("목표40만원달성2",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts)); }
## 나머지 청산식들
if MarketPosition==1 and IsEntryName("매수66") == true then{ ExitLong("수청66",AtLimit,EntryPrice+PriceScale*32); }
########################################################################################################################### highest(H,BarsSinceEntry) Lowest(L,BarsSinceEntry)
SetStopProfittarget(PriceScale*92,PointStop);
SetStopLoss(PriceScale*28,PointStop);
}
if sdate != sdate[1] Then SetStopEndofday(043000);
if bdate != bdate[1] Then SetStopEndofday(0);
* 항상 많은 도움에 정말 고맙습니다.
답변 1
예스스탁 예스스탁 답변
2019-08-01 11:47:21
안녕하세요
예스스탁입니다.
수식 구조를 아래처럼 변경하시면 됩니다.
당일수익틱수는 40이지만
진입은 당일수익이 35틱 이상이면 제한하게 됩니다.
Input : 당일수익틱수(40);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false);
당일수익 = PriceScale*당일수익틱수;
if Bdate != Bdate[1] Then
{
Xcond = false;
N1 = NetProfit;
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= PriceScale*35 Then
Xcond = true;
if (IsExitName("목표40만원달성1",1) == true or IsExitName("목표40만원달성2",1) == true) then
Xcond = true;
}
if Xcond == false then
{
#진입식
}
#가장 위
if MarketPosition == 1 then{ExitLong("목표40만원달성1",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts)); }
if MarketPosition == -1 then{ExitShort("목표40만원달성2",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts)); }
## 나머지 청산식들
if MarketPosition==1 and IsEntryName("매수66") == true then{ ExitLong("수청66",AtLimit,EntryPrice+PriceScale*32); }
########################################################################################################################### highest(H,BarsSinceEntry) Lowest(L,BarsSinceEntry)
SetStopProfittarget(PriceScale*92,PointStop);
SetStopLoss(PriceScale*28,PointStop);
if sdate != sdate[1] Then SetStopEndofday(043000);
if bdate != bdate[1] Then SetStopEndofday(0);
즐거운 하루되세요
> 요타 님이 쓴 글입니다.
> 제목 : 목표수익구간
> * 지난주 도움에 고맙 습니다.
작성해주신 수식은 40틱 되면 자동 으로 잘 청산이 되는데 2가지 문제가 있습니다.
1. 수익 36틱 에서 다시 매매가 되어 총손실로 되는 경우가 발생 합니다.
2. 수익중 중간에 청산 되어 좀더 수익이 될수 있는데 청산이 됨니다.
수식요청: 꼭 40틱이 아니고 35 ~ 50틱 사이면 당일 매매중지되는 수식으로
수정 좀 부탁 드립니다.
즉 청산이 매번 될때 마다 수익이 "목표수익구간"에 있으면 다음 신호는 진입금지 입니다.
#####
Input : 당일수익틱수(40);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false);
당일수익 = PriceScale*당일수익틱수;
if Bdate != Bdate[1] Then
{
Xcond = false;
N1 = NetProfit;
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] then
{
if daypl >= 당일수익 Then
Xcond = true;
if (IsExitName("목표40만원달성1",1) == true or IsExitName("목표40만원달성2",1) == true) then
Xcond = true;
}
if Xcond == false then
{
#진입식
#가장 위
if MarketPosition == 1 then{ExitLong("목표40만원달성1",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts)); }
if MarketPosition == -1 then{ExitShort("목표40만원달성2",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts)); }
## 나머지 청산식들
if MarketPosition==1 and IsEntryName("매수66") == true then{ ExitLong("수청66",AtLimit,EntryPrice+PriceScale*32); }
########################################################################################################################### highest(H,BarsSinceEntry) Lowest(L,BarsSinceEntry)
SetStopProfittarget(PriceScale*92,PointStop);
SetStopLoss(PriceScale*28,PointStop);
}
if sdate != sdate[1] Then SetStopEndofday(043000);
if bdate != bdate[1] Then SetStopEndofday(0);
* 항상 많은 도움에 정말 고맙습니다.