INNER CODE UNIT · Python

position_size

ldt9/PyOptionTrader · models/futures/short_strangle.py:450

                    position_size = int(np.floor(account_value * 0.25 / margin))
                    print(f"{self.get_timestamp()} IV is between 10 and 15...\n{self.get_timestamp()} Position size is 25% of account value\n{self.get_timestamp()} Trading {position_size} contracts")
                if 0.15 <= self.currentIV < 0.20:
                    position_size = int(np.floor(account_value * 0.30 / margin))
                    print(f"{self.get_timestamp()} IV is between 15 and 20...\n{self.get_timestamp()} Position size is 30% of account value\n{self.get_timestamp()} Trading {position_size} contracts")
                if 0.20 <= self.currentIV < 0.30:
                    position_size = int(np.floor(account_value * 0.35 / margin))
                    print(f"{self.get_timestamp()} IV is between 20 and 30...\n{self.get_timestamp()} Position size is 35% of account value\n{self.get_timestamp()} Trading {position_size} contracts")
                if 0.30 <= self.currentIV < 0.40:
                    position_size = int(np.floor(account_value * 0.40 / margin))
                    print(f"{self.get_timestamp()} IV is between 30 and 40...\n{self.get_timestamp()} Position size is 40% of account value\n{self.get_timestamp()} Trading {position_size} contracts")
                if self.currentIV >= 0.40:
                    position_size = int(np.floor(account_value * 0.50 / margin))
                    print(f"{self.get_timestamp()} IV is greater than 40...\n{self.get_timestamp()} Position size is 50% of account value\n{self.get_timestamp()} Trading {position_size} contracts")

            if order_style == 'bracket':
                IV_adjusted_bracket = self.ib.bracketOrder('BUY', position_size, self.lastEstimatedTradePrice,
                                                           self.takeProfitPrice,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…